Automatic Differentiation
 
Loading...
Searching...
No Matches
hcubature.hpp File Reference

Go to the source code of this file.

Classes

struct  stan::math::internal::Box< T_a, T_b >
 Compute the integral of the function to be integrated (integrand) from a to b for more than one dimensions. More...
 

Namespaces

namespace  stan
 The lgamma implementation in stan-math is based on either the reentrant safe lgamma_r implementation from C or the boost::math::lgamma implementation.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
namespace  stan::math::internal
 A comparator that works for any container type that has the brackets operator.
 

Functions

void stan::math::internal::combination (Eigen::Matrix< int, Eigen::Dynamic, 1 > &c, const int dim, const int p, const int x)
 Get the [x]-th lexicographically ordered set of [p] elements in [dim] output is in [c], and should be sizeof(int)*[p] "Algorithm 515: Generation of a Vector from the Lexicographical Index"; Buckles, B.
 
template<typename Scalar >
Eigen::Matrix< Scalar, Eigen::Dynamic, Eigen::Dynamic > stan::math::internal::combos (const int k, const Scalar lambda, const int dim)
 Compute a matrix [p] of all [dim]-component vectors with [k] components equal to [lambda] and other components equal to zero.
 
template<typename Scalar >
Eigen::Matrix< Scalar, Eigen::Dynamic, Eigen::Dynamic > stan::math::internal::signcombos (const int k, const Scalar lambda, const int dim)
 Compute a matrix [p] of all [dim]-component vectors with [k] components equal to [±lambda] and other components equal to zero (with all possible signs).
 
std::tuple< std::array< Eigen::Matrix< double, Eigen::Dynamic, Eigen::Dynamic >, 4 >, Eigen::Matrix< double, 5, 1 >, Eigen::Matrix< double, 4, 1 > > stan::math::internal::make_GenzMalik (const int dim)
 Compute the points and weights corresponding to a [dim]-dimensional Genz-Malik cubature rule.
 
template<typename F , typename T_a , typename T_b , typename ParsPairT >
auto stan::math::internal::gauss_kronrod (const F &integrand, const T_a a, const T_b b, const ParsPairT &pars_pair)
 Compute the integral of the function to be integrated (integrand) from a to b for one dimension.
 
template<typename F , typename GenzMalik , typename T_a , typename T_b , typename ParsTupleT >
auto stan::math::internal::integrate_GenzMalik (const F &integrand, const GenzMalik &genz_malik, const int dim, const Eigen::Matrix< T_a, Eigen::Dynamic, 1 > &a, const Eigen::Matrix< T_b, Eigen::Dynamic, 1 > &b, const ParsTupleT &pars_tuple)
 Compute the integral of the function to be integrated (integrand) from a to b for more than one dimensions.
 
template<typename F , typename T_a , typename T_b , typename ParsTuple , typename TAbsErr , typename TRelErr >
auto stan::math::hcubature (const F &integrand, const ParsTuple &pars, const int dim, const Eigen::Matrix< T_a, Eigen::Dynamic, 1 > &a, const Eigen::Matrix< T_b, Eigen::Dynamic, 1 > &b, const int max_eval, const TAbsErr reqAbsError, const TRelErr reqRelError)
 Compute the [dim]-dimensional integral of the function \(f\) from \(a\) to \(b\) within specified relative and absolute tolerances or maximum number of evaluations.
 

Variables

static constexpr std::array< double, 8 > stan::math::internal::xd7
 
static constexpr std::array< double, 8 > stan::math::internal::wd7
 
static constexpr std::array< double, 4 > stan::math::internal::gwd7