\hypertarget{classmgamma}{
\section{mgamma Class Reference}
\label{classmgamma}\index{mgamma@{mgamma}}
}
Gamma random walk.  


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

Inheritance diagram for mgamma:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=58pt]{classmgamma__inherit__graph}
\end{center}
\end{figure}
Collaboration diagram for mgamma:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=76pt]{classmgamma__coll__graph}
\end{center}
\end{figure}
\subsection*{Public Member Functions}
\begin{CompactItemize}
\item 
\hypertarget{classmgamma_af43e61b86900c0398d5c0ffc83b94e6}{
\hyperlink{classmgamma_af43e61b86900c0398d5c0ffc83b94e6}{mgamma} (const \hyperlink{classRV}{RV} \&\hyperlink{classmpdf_f6687c07ff07d47812dd565368ca59eb}{rv}, const \hyperlink{classRV}{RV} \&\hyperlink{classmpdf_acb7dda792b3cd5576f39fa3129abbab}{rvc})}
\label{classmgamma_af43e61b86900c0398d5c0ffc83b94e6}

\begin{CompactList}\small\item\em Constructor. \item\end{CompactList}\item 
\hypertarget{classmgamma_a9d646cf758a70126dde7c48790b6e94}{
void \hyperlink{classmgamma_a9d646cf758a70126dde7c48790b6e94}{set\_\-parameters} (double \hyperlink{classmgamma_43f733cce0245a52363d566099add687}{k})}
\label{classmgamma_a9d646cf758a70126dde7c48790b6e94}

\begin{CompactList}\small\item\em Set value of {\tt k}. \item\end{CompactList}\item 
\hypertarget{classmgamma_a61094c9f7a2d64ea77b130cbc031f97}{
void \hyperlink{classmgamma_a61094c9f7a2d64ea77b130cbc031f97}{condition} (const vec \&val)}
\label{classmgamma_a61094c9f7a2d64ea77b130cbc031f97}

\begin{CompactList}\small\item\em Update {\tt ep} so that it represents this \hyperlink{classmpdf}{mpdf} conditioned on {\tt rvc} = cond. \item\end{CompactList}\item 
virtual vec \hyperlink{classmpdf_3f172b79ec4a5ebc87898a5381141f1b}{samplecond} (const vec \&cond, double \&ll)
\begin{CompactList}\small\item\em Returns the required moment of the \hyperlink{classepdf}{epdf}. \item\end{CompactList}\item 
virtual mat \hyperlink{classmpdf_0e37163660f93df2a4d723cedb1da89c}{samplecond} (const vec \&cond, vec \&ll, int N)
\begin{CompactList}\small\item\em Returns. \item\end{CompactList}\item 
\hypertarget{classmpdf_80b738ece5bd4f8c4edaee4b38906f91}{
virtual double \hyperlink{classmpdf_80b738ece5bd4f8c4edaee4b38906f91}{evalcond} (const vec \&dt, const vec \&cond)}
\label{classmpdf_80b738ece5bd4f8c4edaee4b38906f91}

\begin{CompactList}\small\item\em Shortcut for conditioning and evaluation of the internal \hyperlink{classepdf}{epdf}. In some cases, this operation can be implemented efficiently. \item\end{CompactList}\item 
\hypertarget{classmpdf_ec9c850305984582548e8deb64f0ffe8}{
\hyperlink{classRV}{RV} \hyperlink{classmpdf_ec9c850305984582548e8deb64f0ffe8}{\_\-rvc} ()}
\label{classmpdf_ec9c850305984582548e8deb64f0ffe8}

\begin{CompactList}\small\item\em access function \item\end{CompactList}\item 
\hypertarget{classmpdf_1e71ad4c66d5884c82d4a3b06b42fe32}{
\hyperlink{classRV}{RV} \hyperlink{classmpdf_1e71ad4c66d5884c82d4a3b06b42fe32}{\_\-rv} ()}
\label{classmpdf_1e71ad4c66d5884c82d4a3b06b42fe32}

\begin{CompactList}\small\item\em access function \item\end{CompactList}\item 
\hypertarget{classmpdf_e17780ee5b2cfe05922a6c56af1462f8}{
\hyperlink{classepdf}{epdf} \& \hyperlink{classmpdf_e17780ee5b2cfe05922a6c56af1462f8}{\_\-epdf} ()}
\label{classmpdf_e17780ee5b2cfe05922a6c56af1462f8}

\begin{CompactList}\small\item\em access function \item\end{CompactList}\end{CompactItemize}
\subsection*{Protected Attributes}
\begin{CompactItemize}
\item 
\hypertarget{classmgamma_612dbf35c770a780027619aaac2c443e}{
\hyperlink{classegamma}{egamma} \hyperlink{classmgamma_612dbf35c770a780027619aaac2c443e}{epdf}}
\label{classmgamma_612dbf35c770a780027619aaac2c443e}

\begin{CompactList}\small\item\em Internal \hyperlink{classepdf}{epdf} that arise by conditioning on {\tt rvc}. \item\end{CompactList}\item 
\hypertarget{classmgamma_43f733cce0245a52363d566099add687}{
double \hyperlink{classmgamma_43f733cce0245a52363d566099add687}{k}}
\label{classmgamma_43f733cce0245a52363d566099add687}

\begin{CompactList}\small\item\em Constant $k$. \item\end{CompactList}\item 
\hypertarget{classmgamma_5e90652837448bcc29707e7412f99691}{
vec $\ast$ \hyperlink{classmgamma_5e90652837448bcc29707e7412f99691}{\_\-beta}}
\label{classmgamma_5e90652837448bcc29707e7412f99691}

\begin{CompactList}\small\item\em cache of epdf.beta \item\end{CompactList}\item 
\hypertarget{classmpdf_f6687c07ff07d47812dd565368ca59eb}{
\hyperlink{classRV}{RV} \hyperlink{classmpdf_f6687c07ff07d47812dd565368ca59eb}{rv}}
\label{classmpdf_f6687c07ff07d47812dd565368ca59eb}

\begin{CompactList}\small\item\em modeled random variable \item\end{CompactList}\item 
\hypertarget{classmpdf_acb7dda792b3cd5576f39fa3129abbab}{
\hyperlink{classRV}{RV} \hyperlink{classmpdf_acb7dda792b3cd5576f39fa3129abbab}{rvc}}
\label{classmpdf_acb7dda792b3cd5576f39fa3129abbab}

\begin{CompactList}\small\item\em random variable in condition \item\end{CompactList}\item 
\hypertarget{classmpdf_7aa894208a32f3487827df6d5054424c}{
\hyperlink{classepdf}{epdf} $\ast$ \hyperlink{classmpdf_7aa894208a32f3487827df6d5054424c}{ep}}
\label{classmpdf_7aa894208a32f3487827df6d5054424c}

\begin{CompactList}\small\item\em pointer to internal \hyperlink{classepdf}{epdf} \item\end{CompactList}\end{CompactItemize}


\subsection{Detailed Description}
Gamma random walk. 

Mean value, $\mu$, of this density is given by {\tt rvc} . Standard deviation of the random walk is proportional to one $k$-th the mean. This is achieved by setting $\alpha=k$ and $\beta=k/\mu$.

The standard deviation of the walk is then: $\mu/\sqrt(k)$. 

\subsection{Member Function Documentation}
\hypertarget{classmpdf_3f172b79ec4a5ebc87898a5381141f1b}{
\index{mgamma@{mgamma}!samplecond@{samplecond}}
\index{samplecond@{samplecond}!mgamma@{mgamma}}
\subsubsection[samplecond]{\setlength{\rightskip}{0pt plus 5cm}virtual vec mpdf::samplecond (const vec \& {\em cond}, \/  double \& {\em ll})\hspace{0.3cm}{\tt  \mbox{[}inline, virtual, inherited\mbox{]}}}}
\label{classmpdf_3f172b79ec4a5ebc87898a5381141f1b}


Returns the required moment of the \hyperlink{classepdf}{epdf}. 

Returns a sample from the density conditioned on {\tt cond}, $x \sim epdf(rv|cond)$. \begin{Desc}
\item[Parameters:]
\begin{description}
\item[{\em cond}]is numeric value of {\tt rv} \item[{\em ll}]is a return value of log-likelihood of the sample. \end{description}
\end{Desc}


Reimplemented in \hyperlink{classmprod_a48887eb8738a9e5550bfc38eb8e9d68}{mprod}.

References mpdf::condition(), mpdf::ep, epdf::evalpdflog(), and epdf::sample().

Referenced by MPF$<$ BM\_\-T $>$::bayes(), and PF::bayes().\hypertarget{classmpdf_0e37163660f93df2a4d723cedb1da89c}{
\index{mgamma@{mgamma}!samplecond@{samplecond}}
\index{samplecond@{samplecond}!mgamma@{mgamma}}
\subsubsection[samplecond]{\setlength{\rightskip}{0pt plus 5cm}virtual mat mpdf::samplecond (const vec \& {\em cond}, \/  vec \& {\em ll}, \/  int {\em N})\hspace{0.3cm}{\tt  \mbox{[}inline, virtual, inherited\mbox{]}}}}
\label{classmpdf_0e37163660f93df2a4d723cedb1da89c}


Returns. 

\begin{Desc}
\item[Parameters:]
\begin{description}
\item[{\em N}]samples from the density conditioned on {\tt cond}, $x \sim epdf(rv|cond)$. \item[{\em cond}]is numeric value of {\tt rv} \item[{\em ll}]is a return value of log-likelihood of the sample. \end{description}
\end{Desc}


Reimplemented in \hyperlink{classmprod_e171c40e210539c2af01d6237785620b}{mprod}.

References mpdf::condition(), RV::count(), mpdf::ep, epdf::evalpdflog(), mpdf::rv, and epdf::sample().

The documentation for this class was generated from the following files:\begin{CompactItemize}
\item 
work/git/mixpp/bdm/stat/\hyperlink{libEF_8h}{libEF.h}\item 
work/git/mixpp/bdm/stat/libEF.cpp\end{CompactItemize}
