\section{ARX Class Reference}
\label{classARX}\index{ARX@{ARX}}
Linear Autoregressive model with Gaussian noise.  


{\tt \#include $<$arx.h$>$}

Inheritance diagram for ARX:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=40pt]{classARX__inherit__graph}
\end{center}
\end{figure}
Collaboration diagram for ARX:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=90pt]{classARX__coll__graph}
\end{center}
\end{figure}
\subsection*{Public Member Functions}
\begin{CompactItemize}
\item 
{\bf ARX} ({\bf RV} \&{\bf rv}, mat \&V0, double \&nu0, double frg0=1.0)\label{classARX_5fc6c18e73dcc0f1135eef33f42db8be}

\begin{CompactList}\small\item\em Full constructor. \item\end{CompactList}\item 
void {\bf set\_\-parameters} (mat \&V0, double \&nu0)\label{classARX_3ccef8dc9dbed00ec74dddc949845d39}

\begin{CompactList}\small\item\em Set sufficient statistics. \item\end{CompactList}\item 
void {\bf get\_\-parameters} (mat \&V0, double \&nu0)\label{classARX_29f55b43b8b6f5c4a55f6176aa85c494}

\begin{CompactList}\small\item\em Returns sufficient statistics. \item\end{CompactList}\item 
void {\bf bayes} (const vec \&dt)\label{classARX_ba82c956ca893826811aefe1e4af465d}

\begin{CompactList}\small\item\em Here $dt = [y_t psi_t] $. \item\end{CompactList}\item 
{\bf epdf} \& {\bf \_\-epdf} ()\label{classARX_9d8eff7a9df81786191a4c55b27e5b8a}

\begin{CompactList}\small\item\em Returns a pointer to the \doxyref{epdf}{p.}{classepdf} representing posterior density on parameters. Use with care! \item\end{CompactList}\item 
ivec {\bf structure\_\-est} ({\bf egiw} Eg0)
\begin{CompactList}\small\item\em Brute force structure estimation. \item\end{CompactList}\item 
double {\bf \_\-tll} ()\label{classARX_b8827048ceec8999849e2ed15400cae7}

\begin{CompactList}\small\item\em access function \item\end{CompactList}\item 
void {\bf bayes} (mat Dt)\label{classBM_87b07867fd4c133aa89a18543f68d9f9}

\begin{CompactList}\small\item\em Batch Bayes rule (columns of Dt are observations). \item\end{CompactList}\item 
const {\bf RV} \& {\bf \_\-rv} () const \label{classBM_126bd2595c48e311fc2a7ab72876092a}

\begin{CompactList}\small\item\em access function \item\end{CompactList}\item 
double {\bf \_\-ll} () const \label{classBM_87f4a547d2c29180be88175e5eab9c88}

\begin{CompactList}\small\item\em access function \item\end{CompactList}\end{CompactItemize}
\subsection*{Protected Attributes}
\begin{CompactItemize}
\item 
{\bf egiw} {\bf est}\label{classARX_691d023662beffa1dda611b416c0e27e}

\begin{CompactList}\small\item\em Posterior estimate of $\theta,r$ in the form of Normal-inverse Wishart density. \item\end{CompactList}\item 
{\bf ldmat} \& {\bf V}\label{classARX_2291297861dd74ca0175a01f910a0ef7}

\begin{CompactList}\small\item\em cached value of est.V \item\end{CompactList}\item 
double \& {\bf nu}\label{classARX_a4182c281098b2d86b62518a7493d9be}

\begin{CompactList}\small\item\em cached value of est.nu \item\end{CompactList}\item 
double {\bf frg}\label{classARX_e467144efb0a5acbc10dba4eff8638fe}

\begin{CompactList}\small\item\em forgetting factor \item\end{CompactList}\item 
double {\bf last\_\-lognc}\label{classARX_6d0cd0f0734aa77cdc5e48f1cf6737ec}

\begin{CompactList}\small\item\em cached value of lognc() in the previous step (used in evaluation of {\tt ll} ) \item\end{CompactList}\item 
double {\bf tll}\label{classARX_64ea7c8ff48bf2548bac3e985e24da19}

\begin{CompactList}\small\item\em total likelihood \item\end{CompactList}\item 
{\bf RV} {\bf rv}\label{classBM_af00f0612fabe66241dd507188cdbf88}

\begin{CompactList}\small\item\em Random variable of the posterior. \item\end{CompactList}\item 
double {\bf ll}\label{classBM_5623fef6572a08c2b53b8c87b82dc979}

\begin{CompactList}\small\item\em Logarithm of marginalized data likelihood. \item\end{CompactList}\item 
bool {\bf evalll}\label{classBM_bf6fb59b30141074f8ee1e2f43d03129}

\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 time. \item\end{CompactList}\end{CompactItemize}


\subsection{Detailed Description}
Linear Autoregressive model with Gaussian noise. 

Regression of the following kind: \[ y_t = \theta_1 \psi_1 + \theta_2 + \psi_2 +\ldots + \theta_n \psi_n + r e_t \] where unknown parameters {\tt rv} are $[\theta r]$, regression vector $\psi=\psi(y_{1:t},u_{1:t})$ is a known function of past outputs and exogeneous variables $u_t$. Distrubances $e_t$ are supposed to be normally distributed: \[ e_t \sim \mathcal{N}(0,1). \]

Extension for time-variant parameters $\theta_t,r_t$ may be achived using exponential forgetting (Kulhavy and Zarrop, 1993). In such a case, the forgetting factor {\tt frg} $\in <0,1>$ should be given in the constructor. Time-invariant parameters are estimated for {\tt frg} = 1. 

\subsection{Member Function Documentation}
\index{ARX@{ARX}!structure\_\-est@{structure\_\-est}}
\index{structure\_\-est@{structure\_\-est}!ARX@{ARX}}
\subsubsection[structure\_\-est]{\setlength{\rightskip}{0pt plus 5cm}ivec ARX::structure\_\-est ({\bf egiw} {\em Eg0})}\label{classARX_130bb7336aac681ce14b027b8f1409fa}


Brute force structure estimation. 

\begin{Desc}
\item[Returns:]indeces of accepted regressors. \end{Desc}


References RV::count(), est, egiw::lognc(), and BM::rv.

The documentation for this class was generated from the following files:\begin{CompactItemize}
\item 
work/git/mixpp/bdm/estim/{\bf arx.h}\item 
work/git/mixpp/bdm/estim/arx.cpp\end{CompactItemize}
