\hypertarget{classbdm_1_1BMEF}{ \section{bdm::BMEF Class Reference} \label{classbdm_1_1BMEF}\index{bdm::BMEF@{bdm::BMEF}} } {\tt \#include $<$libEF.h$>$} Inheritance diagram for bdm::BMEF::\begin{figure}[H] \begin{center} \leavevmode \includegraphics[height=4cm]{classbdm_1_1BMEF} \end{center} \end{figure} \subsection{Detailed Description} Estimator for Exponential family. \subsection*{Public Member Functions} \begin{CompactItemize} \item \hypertarget{classbdm_1_1BMEF_2def512872ed8a4fc3b702371ec0be55}{ \hyperlink{classbdm_1_1BMEF_2def512872ed8a4fc3b702371ec0be55}{BMEF} (double frg0=1.0)} \label{classbdm_1_1BMEF_2def512872ed8a4fc3b702371ec0be55} \begin{CompactList}\small\item\em Default constructor (=empty constructor). \item\end{CompactList}\item \hypertarget{classbdm_1_1BMEF_9662379513101405e159e76717104e62}{ \hyperlink{classbdm_1_1BMEF_9662379513101405e159e76717104e62}{BMEF} (const \hyperlink{classbdm_1_1BMEF}{BMEF} \&B)} \label{classbdm_1_1BMEF_9662379513101405e159e76717104e62} \begin{CompactList}\small\item\em Copy constructor. \item\end{CompactList}\item \hypertarget{classbdm_1_1BMEF_d2b528b7a41ca67163152142f5404051}{ virtual void \hyperlink{classbdm_1_1BMEF_d2b528b7a41ca67163152142f5404051}{set\_\-statistics} (const \hyperlink{classbdm_1_1BMEF}{BMEF} $\ast$BM0)} \label{classbdm_1_1BMEF_d2b528b7a41ca67163152142f5404051} \begin{CompactList}\small\item\em get statistics from another model \item\end{CompactList}\item \hypertarget{classbdm_1_1BMEF_bf58deb99af2a6cc674f13ff90300de6}{ virtual void \hyperlink{classbdm_1_1BMEF_bf58deb99af2a6cc674f13ff90300de6}{bayes} (const vec \&data, const double w)} \label{classbdm_1_1BMEF_bf58deb99af2a6cc674f13ff90300de6} \begin{CompactList}\small\item\em Weighted update of sufficient statistics (Bayes rule). \item\end{CompactList}\item void \hyperlink{classbdm_1_1BMEF_c287f4c0c1ea31b91572ec45351838f1}{bayes} (const vec \&dt) \begin{CompactList}\small\item\em Incremental Bayes rule. \item\end{CompactList}\item \hypertarget{classbdm_1_1BMEF_b2916a2e71a958665054473124d5e749}{ virtual void \hyperlink{classbdm_1_1BMEF_b2916a2e71a958665054473124d5e749}{flatten} (const \hyperlink{classbdm_1_1BMEF}{BMEF} $\ast$B)} \label{classbdm_1_1BMEF_b2916a2e71a958665054473124d5e749} \begin{CompactList}\small\item\em Flatten the posterior according to the given \hyperlink{classbdm_1_1BMEF}{BMEF} (of the same type!). \item\end{CompactList}\item \hypertarget{classbdm_1_1BMEF_5912dbcf28ae711e30b08c2fa766a3e6}{ \hyperlink{classbdm_1_1BMEF}{BMEF} $\ast$ \hyperlink{classbdm_1_1BMEF_5912dbcf28ae711e30b08c2fa766a3e6}{\_\-copy\_\-} (bool changerv=false)} \label{classbdm_1_1BMEF_5912dbcf28ae711e30b08c2fa766a3e6} \begin{CompactList}\small\item\em Flatten the posterior as if to keep nu0 data. \item\end{CompactList}\end{CompactItemize} \begin{Indent}{\bf Constructors}\par \begin{CompactItemize} \item virtual \hyperlink{classbdm_1_1BM}{BM} $\ast$ \hyperlink{classbdm_1_1BM_c0f027ff91d8459937c6f60ff8e553ff}{\_\-copy\_\-} () \end{CompactItemize} \end{Indent} \begin{Indent}{\bf Mathematical operations}\par \begin{CompactItemize} \item \hypertarget{classbdm_1_1BM_1dee3fddaf021e62d925289660a707dc}{ virtual void \hyperlink{classbdm_1_1BM_1dee3fddaf021e62d925289660a707dc}{bayesB} (const mat \&Dt)} \label{classbdm_1_1BM_1dee3fddaf021e62d925289660a707dc} \begin{CompactList}\small\item\em Batch Bayes rule (columns of Dt are observations). \item\end{CompactList}\item virtual double \hyperlink{classbdm_1_1BM_50257e0c1e5b5c73153ea6e716ad8ae0}{logpred} (const vec \&dt) const \item \hypertarget{classbdm_1_1BM_0e8ebe61fb14990abe1254bd3dda5fae}{ vec \hyperlink{classbdm_1_1BM_0e8ebe61fb14990abe1254bd3dda5fae}{logpred\_\-m} (const mat \&dt) const } \label{classbdm_1_1BM_0e8ebe61fb14990abe1254bd3dda5fae} \begin{CompactList}\small\item\em Matrix version of logpred. \item\end{CompactList}\item \hypertarget{classbdm_1_1BM_688d7a2aced1e06aa1c468d73a9e5eba}{ virtual \hyperlink{classbdm_1_1epdf}{epdf} $\ast$ \hyperlink{classbdm_1_1BM_688d7a2aced1e06aa1c468d73a9e5eba}{epredictor} () const } \label{classbdm_1_1BM_688d7a2aced1e06aa1c468d73a9e5eba} \begin{CompactList}\small\item\em Constructs a predictive density $ f(d_{t+1} |d_{t}, \ldots d_{0}) $. \item\end{CompactList}\item \hypertarget{classbdm_1_1BM_598b25e3f3d96a5bc00a5faeb5b3c912}{ virtual \hyperlink{classbdm_1_1mpdf}{mpdf} $\ast$ \hyperlink{classbdm_1_1BM_598b25e3f3d96a5bc00a5faeb5b3c912}{predictor} () const } \label{classbdm_1_1BM_598b25e3f3d96a5bc00a5faeb5b3c912} \begin{CompactList}\small\item\em Constructs a conditional density 1-step ahead predictor. \item\end{CompactList}\end{CompactItemize} \end{Indent} \begin{Indent}{\bf Access to attributes}\par \begin{CompactItemize} \item \hypertarget{classbdm_1_1BM_ff2d8755ba0b3def927d31305c03b09c}{ const \hyperlink{classbdm_1_1RV}{RV} \& \textbf{\_\-drv} () const } \label{classbdm_1_1BM_ff2d8755ba0b3def927d31305c03b09c} \item \hypertarget{classbdm_1_1BM_f135ae6dce7e9f30c9f88229c7930b96}{ void \textbf{set\_\-drv} (const \hyperlink{classbdm_1_1RV}{RV} \&rv)} \label{classbdm_1_1BM_f135ae6dce7e9f30c9f88229c7930b96} \item \hypertarget{classbdm_1_1BM_b38d92f17620813ad872d86e01a26e5e}{ void \textbf{set\_\-rv} (const \hyperlink{classbdm_1_1RV}{RV} \&rv)} \label{classbdm_1_1BM_b38d92f17620813ad872d86e01a26e5e} \item \hypertarget{classbdm_1_1BM_5be65d37dedfe33a3671e7065f523a70}{ double \textbf{\_\-ll} () const } \label{classbdm_1_1BM_5be65d37dedfe33a3671e7065f523a70} \item \hypertarget{classbdm_1_1BM_236b3abbcc93594fc97cd86d82c1a83f}{ void \textbf{set\_\-evalll} (bool evl0)} \label{classbdm_1_1BM_236b3abbcc93594fc97cd86d82c1a83f} \item \hypertarget{classbdm_1_1BM_bb7b0065d6cb722a66b371a8260121e1}{ virtual const \hyperlink{classbdm_1_1epdf}{epdf} \& \textbf{posterior} () const =0} \label{classbdm_1_1BM_bb7b0065d6cb722a66b371a8260121e1} \item \hypertarget{classbdm_1_1BM_4ed0f8b880e606316ae800f3a011c3a6}{ virtual const \hyperlink{classbdm_1_1epdf}{epdf} $\ast$ \textbf{\_\-e} () const =0} \label{classbdm_1_1BM_4ed0f8b880e606316ae800f3a011c3a6} \end{CompactItemize} \end{Indent} \subsection*{Protected Attributes} \begin{CompactItemize} \item \hypertarget{classbdm_1_1BMEF_1331865e10fb1ccef65bb4c47fa3be64}{ double \hyperlink{classbdm_1_1BMEF_1331865e10fb1ccef65bb4c47fa3be64}{frg}} \label{classbdm_1_1BMEF_1331865e10fb1ccef65bb4c47fa3be64} \begin{CompactList}\small\item\em forgetting factor \item\end{CompactList}\item \hypertarget{classbdm_1_1BMEF_06e7b3ac03e10017d4288c76888e2865}{ double \hyperlink{classbdm_1_1BMEF_06e7b3ac03e10017d4288c76888e2865}{last\_\-lognc}} \label{classbdm_1_1BMEF_06e7b3ac03e10017d4288c76888e2865} \begin{CompactList}\small\item\em cached value of lognc() in the previous step (used in evaluation of {\tt ll} ) \item\end{CompactList}\item \hypertarget{classbdm_1_1BM_c400357e37d27a4834b2b1d9211009ed}{ \hyperlink{classbdm_1_1RV}{RV} \hyperlink{classbdm_1_1BM_c400357e37d27a4834b2b1d9211009ed}{drv}} \label{classbdm_1_1BM_c400357e37d27a4834b2b1d9211009ed} \begin{CompactList}\small\item\em Random variable of the data (optional). \item\end{CompactList}\item \hypertarget{classbdm_1_1BM_4064b6559d962633e4372b12f4cd204a}{ double \hyperlink{classbdm_1_1BM_4064b6559d962633e4372b12f4cd204a}{ll}} \label{classbdm_1_1BM_4064b6559d962633e4372b12f4cd204a} \begin{CompactList}\small\item\em Logarithm of marginalized data likelihood. \item\end{CompactList}\item \hypertarget{classbdm_1_1BM_faff0ad12556fe7dc0e2807d4fd938ee}{ bool \hyperlink{classbdm_1_1BM_faff0ad12556fe7dc0e2807d4fd938ee}{evalll}} \label{classbdm_1_1BM_faff0ad12556fe7dc0e2807d4fd938ee} \begin{CompactList}\small\item\em If true, the filter will compute likelihood of the data record and store it in {\tt ll} . Set to false if you want to save computational time. \item\end{CompactList}\end{CompactItemize} \subsection{Member Function Documentation} \hypertarget{classbdm_1_1BMEF_c287f4c0c1ea31b91572ec45351838f1}{ \index{bdm::BMEF@{bdm::BMEF}!bayes@{bayes}} \index{bayes@{bayes}!bdm::BMEF@{bdm::BMEF}} \subsubsection[bayes]{\setlength{\rightskip}{0pt plus 5cm}void bdm::BMEF::bayes (const vec \& {\em dt})\hspace{0.3cm}{\tt \mbox{[}virtual\mbox{]}}}} \label{classbdm_1_1BMEF_c287f4c0c1ea31b91572ec45351838f1} Incremental Bayes rule. \begin{Desc} \item[Parameters:] \begin{description} \item[{\em dt}]vector of input data \end{description} \end{Desc} Implements \hyperlink{classbdm_1_1BM_60b1779a577367c369a932cabd3a6188}{bdm::BM}. Reimplemented in \hyperlink{classbdm_1_1ARX_8bdf2974052e8ce74eb0d4f3791c58a3}{bdm::ARX}, \hyperlink{classbdm_1_1MixEF_5bd7da667da183eed1577f11dff0c1f1}{bdm::MixEF}, and \hyperlink{classbdm_1_1multiBM_1e4bf41b61937fd80f34049742e23f95}{bdm::multiBM}. References bayes().\hypertarget{classbdm_1_1BM_c0f027ff91d8459937c6f60ff8e553ff}{ \index{bdm::BMEF@{bdm::BMEF}!\_\-copy\_\-@{\_\-copy\_\-}} \index{\_\-copy\_\-@{\_\-copy\_\-}!bdm::BMEF@{bdm::BMEF}} \subsubsection[\_\-copy\_\-]{\setlength{\rightskip}{0pt plus 5cm}virtual {\bf BM}$\ast$ bdm::BM::\_\-copy\_\- ()\hspace{0.3cm}{\tt \mbox{[}inline, virtual, inherited\mbox{]}}}} \label{classbdm_1_1BM_c0f027ff91d8459937c6f60ff8e553ff} Copy function required in vectors, Arrays of \hyperlink{classbdm_1_1BM}{BM} etc. Have to be DELETED manually! Prototype: \begin{Code}\begin{verbatim} BM* _copy_(){return new BM(*this);} \end{verbatim} \end{Code} Reimplemented in \hyperlink{classbdm_1_1ARX_60c40b5c6abc4c7e464b4ccae64a5a61}{bdm::ARX}.\hypertarget{classbdm_1_1BM_50257e0c1e5b5c73153ea6e716ad8ae0}{ \index{bdm::BMEF@{bdm::BMEF}!logpred@{logpred}} \index{logpred@{logpred}!bdm::BMEF@{bdm::BMEF}} \subsubsection[logpred]{\setlength{\rightskip}{0pt plus 5cm}virtual double bdm::BM::logpred (const vec \& {\em dt}) const\hspace{0.3cm}{\tt \mbox{[}inline, virtual, inherited\mbox{]}}}} \label{classbdm_1_1BM_50257e0c1e5b5c73153ea6e716ad8ae0} Evaluates predictive log-likelihood of the given data record I.e. marginal likelihood of the data with the posterior integrated out. Reimplemented in \hyperlink{classbdm_1_1ARX_080a7e531e3aa06694112863b15bc6a4}{bdm::ARX}, \hyperlink{classbdm_1_1MixEF_da724da464a75e07521941e430929efa}{bdm::MixEF}, and \hyperlink{classbdm_1_1multiBM_e157b607c1e3fa91d42aeea44458e2bf}{bdm::multiBM}. Referenced by bdm::BM::logpred\_\-m(). The documentation for this class was generated from the following files:\begin{CompactItemize} \item \hyperlink{libEF_8h}{libEF.h}\item libEF.cpp\end{CompactItemize}