Public Member Functions | Protected Member Functions | List of all members
stan::variational::base_family Class Reference

#include "stan/variational/base_family.hpp"

Inheritance diagram for stan::variational::base_family:
stan::variational::normal_fullrank stan::variational::normal_meanfield

Public Member Functions

 base_family ()
 
base_family square () const
 
base_family sqrt () const
 
base_family operator= (const base_family &rhs)
 
base_family operator+= (const base_family &rhs)
 
base_family operator/= (const base_family &rhs)
 
base_family operator+= (double scalar)
 
base_family operator*= (double scalar)
 
const Eigen::VectorXd & mean () const
 
double entropy () const
 
Eigen::VectorXd transform (const Eigen::VectorXd &eta) const
 
template<class BaseRNG >
void sample (BaseRNG &rng, Eigen::VectorXd &eta) const
 
template<class M , class BaseRNG >
void calc_grad (base_family &elbo_grad, M &m, Eigen::VectorXd &cont_params, int n_monte_carlo_grad, BaseRNG &rng, callbacks::logger &logger) const
 

Protected Member Functions

void write_error_msg_ (std::ostream *error_msgs, const std::exception &e) const
 

Detailed Description

Definition at line 12 of file base_family.hpp.

Constructor & Destructor Documentation

stan::variational::base_family::base_family ( )
inline

Member Function Documentation

template<class M , class BaseRNG >
void stan::variational::base_family::calc_grad ( base_family elbo_grad,
M &  m,
Eigen::VectorXd &  cont_params,
int  n_monte_carlo_grad,
BaseRNG &  rng,
callbacks::logger logger 
) const

Referenced by base_family().

double stan::variational::base_family::entropy ( ) const

Referenced by base_family().

const Eigen::VectorXd& stan::variational::base_family::mean ( ) const

Referenced by base_family().

base_family stan::variational::base_family::operator*= ( double  scalar)

Referenced by base_family().

base_family stan::variational::base_family::operator+= ( const base_family rhs)

Referenced by base_family().

base_family stan::variational::base_family::operator+= ( double  scalar)
base_family stan::variational::base_family::operator/= ( const base_family rhs)

Referenced by base_family().

base_family stan::variational::base_family::operator= ( const base_family rhs)

Referenced by base_family().

template<class BaseRNG >
void stan::variational::base_family::sample ( BaseRNG &  rng,
Eigen::VectorXd &  eta 
) const

Referenced by base_family().

base_family stan::variational::base_family::sqrt ( ) const

Referenced by base_family().

base_family stan::variational::base_family::square ( ) const

Referenced by base_family().

Eigen::VectorXd stan::variational::base_family::transform ( const Eigen::VectorXd &  eta) const

Referenced by base_family().

void stan::variational::base_family::write_error_msg_ ( std::ostream *  error_msgs,
const std::exception &  e 
) const
inlineprotected

Definition at line 44 of file base_family.hpp.

References allTimeWatchdog::endl, stan::variational::operator*(), stan::variational::operator+(), and stan::variational::operator/().

45  {
46  if (!error_msgs) {
47  return;
48  }
49 
50  *error_msgs
51  << std::endl
52  << "Informational Message: The current gradient evaluation "
53  << "of the ELBO is ignored because of the following issue:"
54  << std::endl
55  << e.what() << std::endl
56  << "If this warning occurs often then your model may be "
57  << "either severely ill-conditioned or misspecified."
58  << std::endl;
59  }
Float_t e
Definition: plot.C:35

The documentation for this class was generated from the following file: