(Approximate) Student t density with linear function of mean value
The internal epdf of this class is of the type of a Gaussian (enorm). However, each conditioning is trying to assure the best possible approximation by taking into account the zeta function. See [] for reference.
Perhaps a moment-matching technique?
#include <exp_family.h>
Public Member Functions | |
void | set_parameters (const mat &A0, const vec &mu0, const ldmat &R0, const ldmat &Lambda0) |
constructor function | |
void | condition (const vec &cond) |
void | validate () |
This method TODO. | |
const vec & | _mu_const () const |
access function | |
const mat & | _A () const |
access function | |
mat | _R () const |
access function | |
void | from_setting (const Setting &set) |
enorm< ldmat > & | e () |
access function to iepdf | |
vec | samplecond (const vec &cond) |
Reimplements samplecond using condition() . | |
double | evallogcond (const vec &val, const vec &cond) |
Reimplements evallogcond using condition() . | |
virtual vec | evallogcond_m (const mat &Dt, const vec &cond) |
Efficient version of evallogcond for matrices. | |
virtual vec | evallogcond_m (const Array< vec > &Dt, const vec &cond) |
Efficient version of evallogcond for Array<vec>. | |
virtual mat | samplecond_m (const vec &cond, int N) |
Efficient version of samplecond. | |
virtual string | to_string () |
This method returns a basic info about the current instance. | |
virtual void | to_setting (Setting &set) const |
This method save all the instance properties into the Setting structure. | |
Constructors | |
void | set_parameters (const mat &A0, const vec &mu0, const ldmat &R0) |
Set A and R . | |
Access to attributes | |
const RV & | _rv () const |
const RV & | _rvc () const |
int | dimension () const |
int | dimensionc () |
Connection to other objects | |
void | set_rvc (const RV &rvc0) |
void | set_rv (const RV &rv0) |
bool | isnamed () |
Protected Member Functions | |
void | set_ep (epdf &iepdf) |
set internal pointer ep to point to given iepdf | |
void | set_ep (epdf *iepdfp) |
set internal pointer ep to point to given iepdf | |
Protected Attributes | |
ldmat | Lambda |
Variable from theory. | |
ldmat & | _R |
Reference to variable . | |
ldmat | Re |
Variable . | |
mat | A |
Internal epdf that arise by conditioning on rvc . | |
vec | mu_const |
Constant additive term. | |
enorm< ldmat > | iepdf |
Internal epdf used for sampling. | |
int | dimc |
dimension of the condition | |
RV | rvc |
random variable in condition | |
Friends | |
std::ostream & | operator<< (std::ostream &os, mlnorm< sq_M, enorm > &ml) |
Debug stream. |
void bdm::mlstudent::condition | ( | const vec & | cond | ) | [inline, virtual] |
Set value of rvc
. Result of this operation is stored in epdf
use function _ep
to access it.
Reimplemented from bdm::mlnorm< ldmat, enorm >.
References bdm::mlnorm< ldmat, enorm >::_R(), bdm::mlnorm< ldmat, enorm >::A, bdm::mpdf_internal< enorm< ldmat > >::iepdf, bdm::ldmat::invqform(), Lambda, bdm::mlnorm< ldmat, enorm >::mu_const, Re, and bdm::sqmat::rows().
void bdm::mlnorm< ldmat , enorm >::from_setting | ( | const Setting & | set | ) | [inline, virtual, inherited] |
Create Normal density with linear function of mean value
from structure
class = 'mlnorm<ldmat>', (OR) 'mlnorm<chmat>', (OR) 'mlnorm<fsqmat>'; A = []; // matrix or vector of appropriate dimension const = []; // vector of constant term R = []; // square matrix of appropriate dimension
Reimplemented from bdm::mpdf.