autoppl  v0.8
A C++ template library for probabilistic programming
ppl::expr::dist::Cauchy< LocType, ScaleType > Struct Template Reference

#include <cauchy.hpp>

Inheritance diagram for ppl::expr::dist::Cauchy< LocType, ScaleType >:
ppl::util::DistExprBase< Cauchy< LocType, ScaleType > > ppl::util::BaseCRTP< Cauchy< LocType, ScaleType > >

Public Types

using value_t = util::cont_param_t
 
using base_t = util::DistExprBase< Cauchy< loc_t, scale_t > >
 
using dist_value_t = util::dist_value_t
 
- Public Types inherited from ppl::util::DistExprBase< Cauchy< LocType, ScaleType > >
using dist_value_t = util::dist_value_t
 

Public Member Functions

 Cauchy (const loc_t &loc, const scale_t &scale)
 
template<class XType >
dist_value_t log_pdf (const XType &x)
 
template<class XType , class PtrPackType >
auto ad_log_pdf (const XType &x, const PtrPackType &pack) const
 
template<class PtrPackType >
void bind (const PtrPackType &pack)
 
void activate_refcnt () const
 
template<class XType , class GenType >
constexpr bool prune (XType &, GenType &) const
 
- Public Member Functions inherited from ppl::util::BaseCRTP< Cauchy< LocType, ScaleType > >
Cauchy< LocType, ScaleType > & self ()
 
const Cauchy< LocType, ScaleType > & self () const
 

Detailed Description

template<class LocType, class ScaleType>
struct ppl::expr::dist::Cauchy< LocType, ScaleType >

Cauchy is a generic expression type for the cauchy distribution.

If LocType or ScaleType is a vector, then the variable assigned to this distribution must also be a vector.

Template Parameters
LocTypevariable expression for the loc. Cannot be a matrix shape.
ScaleTypevariable expression for the scale. Cannot be a matrix shape.

Member Typedef Documentation

◆ base_t

template<class LocType , class ScaleType >
using ppl::expr::dist::Cauchy< LocType, ScaleType >::base_t = util::DistExprBase<Cauchy<loc_t, scale_t> >

◆ dist_value_t

template<class LocType , class ScaleType >
using ppl::util::DistExprBase< T >::dist_value_t = util::dist_value_t

◆ value_t

template<class LocType , class ScaleType >
using ppl::expr::dist::Cauchy< LocType, ScaleType >::value_t = util::cont_param_t

Constructor & Destructor Documentation

◆ Cauchy()

template<class LocType , class ScaleType >
ppl::expr::dist::Cauchy< LocType, ScaleType >::Cauchy ( const loc_t &  loc,
const scale_t &  scale 
)
inline

Member Function Documentation

◆ activate_refcnt()

template<class LocType , class ScaleType >
void ppl::expr::dist::Cauchy< LocType, ScaleType >::activate_refcnt ( ) const
inline

◆ ad_log_pdf()

template<class LocType , class ScaleType >
template<class XType , class PtrPackType >
auto ppl::expr::dist::Cauchy< LocType, ScaleType >::ad_log_pdf ( const XType &  x,
const PtrPackType &  pack 
) const
inline

◆ bind()

template<class LocType , class ScaleType >
template<class PtrPackType >
void ppl::expr::dist::Cauchy< LocType, ScaleType >::bind ( const PtrPackType &  pack)
inline

◆ log_pdf()

template<class LocType , class ScaleType >
template<class XType >
dist_value_t ppl::expr::dist::Cauchy< LocType, ScaleType >::log_pdf ( const XType &  x)
inline

◆ prune()

template<class LocType , class ScaleType >
template<class XType , class GenType >
constexpr bool ppl::expr::dist::Cauchy< LocType, ScaleType >::prune ( XType &  ,
GenType &   
) const
inlineconstexpr

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