Merger using importance sampling with mixture proposal density. More...
Merger using importance sampling with mixture proposal density.
#include <merger.h>
Public Member Functions | |
| 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  | |
| merger_mix () | |
| merger_mix (const Array< shared_ptr< mpdf > > &S) | |
| void | set_sources (const Array< shared_ptr< mpdf > > &S) | 
| Set sources and prepare all internal structures.  | |
| void | set_parameters (int Ncoms0=DFLT_Ncoms, double effss_coef0=DFLT_effss_coef) | 
| Set internal parameters used in approximation.  | |
Mathematical operations  | |
| void | merge () | 
| Merge values using mixture approximation.  | |
| vec | sample () const | 
| sample from the approximating mixture  | |
| double | evallog (const vec &dt) const | 
| loglikelihood computed on mixture models  | |
Access functions  | |
| MixEF & | _Mix () | 
| Access function.  | |
| emix * | proposal () | 
| Access function.  | |
| void | from_setting (const Setting &set) | 
| from_settings  | |
Constructors  | |
| void | set_support (rectangular_support &Sup) | 
| Set support points from rectangular grid.  | |
| void | set_support (discrete_support &Sup) | 
| Set support points from dicrete grid.  | |
| void | set_support (const epdf &overall, int N) | 
| Set support points from a pdf by drawing N samples.  | |
| void | set_debug_file (const string fname) | 
| set debug file  | |
| void | set_method (MERGER_METHOD MTH=DFLT_METHOD, double beta0=DFLT_beta) | 
| Set internal parameters used in approximation.  | |
Mathematical operations  | |
| vec | merge_points (mat &lW) | 
| Merge log-likelihood values in points using method specified by parameter METHOD.  | |
| vec | mean () const | 
| weight w is a   | |
| mat | covariance () const | 
| vec | variance () const | 
| return expected variance (not covariance!)  | |
Access to attributes  | |
| eEmp & | _Smp () | 
| Access function.  | |
| void | validate () | 
| This method TODO.  | |
Constructors  | |
Construction of each epdf should support two types of constructors: 
 The following constructors should be supported for convenience: 
 All internal data structures are constructed as empty. Their values (including sizes) will be set by method   | |
| void | set_parameters (int dim0) | 
Matematical Operations  | |
| virtual mat | sample_m (int N) const | 
Returns N samples,   from density  .  | |
| virtual vec | evallog_m (const mat &Val) const | 
Compute log-probability of multiple values argument val.  | |
| virtual vec | evallog_m (const Array< vec > &Avec) const | 
Compute log-probability of multiple values argument val.  | |
| virtual shared_ptr< mpdf > | condition (const RV &rv) const | 
| Return conditional density on the given RV, the remaining rvs will be in conditioning.  | |
| virtual shared_ptr< epdf > | marginal (const RV &rv) const | 
| Return marginal density on the given RV, the remainig rvs are intergrated out.  | |
| virtual void | qbounds (vec &lb, vec &ub, double percentage=0.95) const | 
Lower and upper bounds of percentage % quantile, returns mean-2*sigma as default.  | |
Connection to other classes  | |
| void | set_rv (const RV &rv0) | 
| Name its rv.  | |
| bool | isnamed () const | 
| True if rv is assigned.  | |
| const RV & | _rv () const | 
| Return name (fails when isnamed is false).  | |
Access to attributes  | |
| int | dimension () const | 
| Size of the random variable.  | |
Protected Attributes | |
| MixEF | Mix | 
| Internal mixture of EF models.  | |
| int | Ncoms | 
| Number of components in a mixture.  | |
| double | effss_coef | 
| coefficient of resampling [0,1]  | |
| int | stop_niter | 
| stop after niter iterations  | |
| Array< shared_ptr< mpdf > > | mpdfs | 
| Elements of composition.  | |
| Array< datalink_m2e * > | dls | 
| Data link for each mpdf in mpdfs.  | |
| Array< RV > | rvzs | 
Array of rvs that are not modelled by mpdfs at all,  .  | |
| Array< datalink_m2e * > | zdls | 
Data Links for extension  .  | |
| int | Npoints | 
| number of support points  | |
| int | Nsources | 
| number of sources  | |
| MERGER_METHOD | METHOD | 
| switch of the methoh used for merging  | |
| double | beta | 
| Prior on the log-normal merging model.  | |
| eEmp | eSmp | 
| Projection to empirical density (could also be piece-wise linear).  | |
| bool | DBG | 
| debug or not debug  | |
| it_file * | dbg_file | 
| debugging file  | |
| int | dim | 
| dimension of the random variable  | |
| RV | rv | 
| Description of the random variable.  | |
Static Protected Attributes | |
| static const int | DFLT_Ncoms = 10 | 
| default value for Ncoms  | |
| static const double | DFLT_effss_coef = 0.5 | 
| default value for efss_coef;  | |
| static const MERGER_METHOD | DFLT_METHOD = LOGNORMAL | 
| Default for METHOD.  | |
| static const double | DFLT_beta = 1.2 | 
| default for beta  | |
| vec bdm::merger_base::mean | ( | ) |  const [inline, virtual, inherited] | 
        
weight w is a
sample from merged density
Reimplemented from bdm::epdf.
References bdm::eEmp::_samples(), bdm::eEmp::_w(), bdm::epdf::dim, bdm::merger_base::eSmp, and bdm::merger_base::Npoints.
Referenced by bdm::merger_base::variance().
 1.6.1