root/doc/latex/classbdm_1_1merger.tex @ 275

Revision 271, 15.6 kB (checked in by smidl, 16 years ago)

Next major revision

Line 
1\hypertarget{classbdm_1_1merger}{
2\section{bdm::merger Class Reference}
3\label{classbdm_1_1merger}\index{bdm::merger@{bdm::merger}}
4}
5{\tt \#include $<$merger.h$>$}
6
7Inheritance diagram for bdm::merger::\begin{figure}[H]
8\begin{center}
9\leavevmode
10\includegraphics[height=3cm]{classbdm_1_1merger}
11\end{center}
12\end{figure}
13
14
15\subsection{Detailed Description}
16Function for general combination of pdfs.
17
18Mixtures of Gaussian densities are used internally. Switching to other densities should be trivial. \subsection*{Public Member Functions}
19\begin{CompactItemize}
20\item 
21\hypertarget{classbdm_1_1merger_30ae0fa8a88737185f598bf63fec0569}{
22\hyperlink{classbdm_1_1merger_30ae0fa8a88737185f598bf63fec0569}{merger} (const Array$<$ \hyperlink{classbdm_1_1mpdf}{mpdf} $\ast$ $>$ \&S)}
23\label{classbdm_1_1merger_30ae0fa8a88737185f598bf63fec0569}
24
25\begin{CompactList}\small\item\em Default constructor. \item\end{CompactList}\item 
26\hypertarget{classbdm_1_1merger_bc867c8e2b4709041bf8802ae9c78e37}{
27void \hyperlink{classbdm_1_1merger_bc867c8e2b4709041bf8802ae9c78e37}{set\_\-parameters} (double beta0, int Ns0, int Nc0)}
28\label{classbdm_1_1merger_bc867c8e2b4709041bf8802ae9c78e37}
29
30\begin{CompactList}\small\item\em Set internal parameters used in approximation. \item\end{CompactList}\item 
31\hypertarget{classbdm_1_1merger_8ae79a651e93d6e2d611556001af8aa8}{
32void \hyperlink{classbdm_1_1merger_8ae79a651e93d6e2d611556001af8aa8}{init} ()}
33\label{classbdm_1_1merger_8ae79a651e93d6e2d611556001af8aa8}
34
35\begin{CompactList}\small\item\em Initialize the proposal density. This function must be called before \hyperlink{classbdm_1_1merger_b72f4662c9ac760a8b17ebe5d697f3c2}{merge()}! \item\end{CompactList}\item 
36\hypertarget{classbdm_1_1merger_3d9f0ba04c8e74be8246d840cc537879}{
37void \hyperlink{classbdm_1_1merger_3d9f0ba04c8e74be8246d840cc537879}{merge} (const \hyperlink{classbdm_1_1epdf}{epdf} $\ast$g0)}
38\label{classbdm_1_1merger_3d9f0ba04c8e74be8246d840cc537879}
39
40\begin{CompactList}\small\item\em Create a mixture density using known proposal. \item\end{CompactList}\item 
41\hypertarget{classbdm_1_1merger_b72f4662c9ac760a8b17ebe5d697f3c2}{
42void \hyperlink{classbdm_1_1merger_b72f4662c9ac760a8b17ebe5d697f3c2}{merge} ()}
43\label{classbdm_1_1merger_b72f4662c9ac760a8b17ebe5d697f3c2}
44
45\begin{CompactList}\small\item\em Create a mixture density, make sure to call \hyperlink{classbdm_1_1merger_8ae79a651e93d6e2d611556001af8aa8}{init()} before the first call. \item\end{CompactList}\item 
46\hypertarget{classbdm_1_1merger_b90f1b8a21a693176dd953a3b983aa0b}{
47vec \hyperlink{classbdm_1_1merger_b90f1b8a21a693176dd953a3b983aa0b}{lognorm\_\-merge} (mat \&lW)}
48\label{classbdm_1_1merger_b90f1b8a21a693176dd953a3b983aa0b}
49
50\begin{CompactList}\small\item\em Merge log-likelihood values. \item\end{CompactList}\item 
51vec \hyperlink{classbdm_1_1merger_0ef73e76eeee44c8e3896e3a271ad974}{sample} () const
52\item 
53\hypertarget{classbdm_1_1merger_c47543661897638cab9f506c76a1f92f}{
54double \hyperlink{classbdm_1_1merger_c47543661897638cab9f506c76a1f92f}{evallog} (const vec \&dt) const }
55\label{classbdm_1_1merger_c47543661897638cab9f506c76a1f92f}
56
57\begin{CompactList}\small\item\em Compute log-probability of argument {\tt val}. \item\end{CompactList}\item 
58\hypertarget{classbdm_1_1merger_82c5ad7677315fde8e9fc9381c17ece5}{
59vec \hyperlink{classbdm_1_1merger_82c5ad7677315fde8e9fc9381c17ece5}{mean} () const }
60\label{classbdm_1_1merger_82c5ad7677315fde8e9fc9381c17ece5}
61
62\begin{CompactList}\small\item\em return expected value \item\end{CompactList}\item 
63\hypertarget{classbdm_1_1merger_88e75fe2b9d7c1247b20ea7760c061f1}{
64mat \textbf{covariance} () const }
65\label{classbdm_1_1merger_88e75fe2b9d7c1247b20ea7760c061f1}
66
67\item 
68\hypertarget{classbdm_1_1merger_bcef70ece256b1ab1fa7a3a354eb1cc4}{
69vec \hyperlink{classbdm_1_1merger_bcef70ece256b1ab1fa7a3a354eb1cc4}{variance} () const }
70\label{classbdm_1_1merger_bcef70ece256b1ab1fa7a3a354eb1cc4}
71
72\begin{CompactList}\small\item\em return expected variance (not covariance!) \item\end{CompactList}\item 
73\hypertarget{classbdm_1_1merger_febef179bb5e074ae6e34d15b4596273}{
74virtual \hyperlink{classbdm_1_1merger_febef179bb5e074ae6e34d15b4596273}{$\sim$merger} ()}
75\label{classbdm_1_1merger_febef179bb5e074ae6e34d15b4596273}
76
77\begin{CompactList}\small\item\em for future use \item\end{CompactList}\item 
78\hypertarget{classbdm_1_1merger_13f8534f626a37bed91a6d9db54d6d2f}{
79\hyperlink{classbdm_1_1MixEF}{MixEF} \& \hyperlink{classbdm_1_1merger_13f8534f626a37bed91a6d9db54d6d2f}{\_\-Mix} ()}
80\label{classbdm_1_1merger_13f8534f626a37bed91a6d9db54d6d2f}
81
82\begin{CompactList}\small\item\em Access function. \item\end{CompactList}\item 
83\hypertarget{classbdm_1_1merger_23f5f8b80df579b05681006fbcfe3699}{
84\hyperlink{classbdm_1_1eEmp}{eEmp} \& \hyperlink{classbdm_1_1merger_23f5f8b80df579b05681006fbcfe3699}{\_\-Smp} ()}
85\label{classbdm_1_1merger_23f5f8b80df579b05681006fbcfe3699}
86
87\begin{CompactList}\small\item\em Access function. \item\end{CompactList}\item 
88\hyperlink{classbdm_1_1RV}{RV} \hyperlink{classbdm_1_1compositepdf_c73d39acc4378eee6a63155c3517d3c9}{getrv} (bool checkoverlap=false)
89\begin{CompactList}\small\item\em find common rv, flag \item\end{CompactList}\item 
90\hypertarget{classbdm_1_1compositepdf_c71fc2c51f49d797e61f479f543c75ce}{
91void \hyperlink{classbdm_1_1compositepdf_c71fc2c51f49d797e61f479f543c75ce}{setrvc} (const \hyperlink{classbdm_1_1RV}{RV} \&\hyperlink{classbdm_1_1epdf_62c5b8ff71d9ebe6cd58d3c342eb1dc8}{rv}, \hyperlink{classbdm_1_1RV}{RV} \&rvc)}
92\label{classbdm_1_1compositepdf_c71fc2c51f49d797e61f479f543c75ce}
93
94\begin{CompactList}\small\item\em common rvc of all mpdfs is written to rvc \item\end{CompactList}\end{CompactItemize}
95\begin{Indent}{\bf Constructors}\par
96{\em Construction of each \hyperlink{classbdm_1_1epdf}{epdf} should support two types of constructors: \begin{itemize}
97\item empty constructor, \item copy constructor,\end{itemize}
98The following constructors should be supported for convenience: \begin{itemize}
99\item constructor followed by calling {\tt \hyperlink{classbdm_1_1merger_bc867c8e2b4709041bf8802ae9c78e37}{set\_\-parameters()}} \item constructor accepting random variables calling {\tt \hyperlink{classbdm_1_1epdf_f423e28448dbb69ef4905295ec8de8ff}{set\_\-rv()}} \end{itemize}
100All internal data structures are constructed as empty. Their values (including sizes) will be set by method {\tt \hyperlink{classbdm_1_1merger_bc867c8e2b4709041bf8802ae9c78e37}{set\_\-parameters()}}. This way references can be initialized in constructors. }\begin{CompactItemize}
101\item 
102\hypertarget{classbdm_1_1epdf_840de94aa33cf4f2ebd2427f45a165d8}{
103void \textbf{set\_\-parameters} (int dim0)}
104\label{classbdm_1_1epdf_840de94aa33cf4f2ebd2427f45a165d8}
105
106\end{CompactItemize}
107\end{Indent}
108\begin{Indent}{\bf Matematical Operations}\par
109\begin{CompactItemize}
110\item 
111\hypertarget{classbdm_1_1epdf_b4cf45fd83cc7573ede9fe1215256058}{
112virtual mat \hyperlink{classbdm_1_1epdf_b4cf45fd83cc7573ede9fe1215256058}{sample\_\-m} (int N) const }
113\label{classbdm_1_1epdf_b4cf45fd83cc7573ede9fe1215256058}
114
115\begin{CompactList}\small\item\em Returns N samples, $ [x_1 , x_2 , \ldots \ $ from density $ f_x(rv)$. \item\end{CompactList}\item 
116\hypertarget{classbdm_1_1epdf_34956d4dd3176eeb5937cf48a1546b62}{
117virtual vec \hyperlink{classbdm_1_1epdf_34956d4dd3176eeb5937cf48a1546b62}{evallog\_\-m} (const mat \&Val) const }
118\label{classbdm_1_1epdf_34956d4dd3176eeb5937cf48a1546b62}
119
120\begin{CompactList}\small\item\em Compute log-probability of multiple values argument {\tt val}. \item\end{CompactList}\item 
121\hypertarget{classbdm_1_1epdf_e584eac5579c1b6384947ecf66166c77}{
122virtual \hyperlink{classbdm_1_1mpdf}{mpdf} $\ast$ \hyperlink{classbdm_1_1epdf_e584eac5579c1b6384947ecf66166c77}{condition} (const \hyperlink{classbdm_1_1RV}{RV} \&\hyperlink{classbdm_1_1epdf_62c5b8ff71d9ebe6cd58d3c342eb1dc8}{rv}) const }
123\label{classbdm_1_1epdf_e584eac5579c1b6384947ecf66166c77}
124
125\begin{CompactList}\small\item\em Return conditional density on the given \hyperlink{classbdm_1_1RV}{RV}, the remaining rvs will be in conditioning. \item\end{CompactList}\item 
126\hypertarget{classbdm_1_1epdf_3fb2ece54f720b62ad325e61214fa0a1}{
127virtual \hyperlink{classbdm_1_1epdf}{epdf} $\ast$ \hyperlink{classbdm_1_1epdf_3fb2ece54f720b62ad325e61214fa0a1}{marginal} (const \hyperlink{classbdm_1_1RV}{RV} \&\hyperlink{classbdm_1_1epdf_62c5b8ff71d9ebe6cd58d3c342eb1dc8}{rv}) const }
128\label{classbdm_1_1epdf_3fb2ece54f720b62ad325e61214fa0a1}
129
130\begin{CompactList}\small\item\em Return marginal density on the given \hyperlink{classbdm_1_1RV}{RV}, the remainig rvs are intergrated out. \item\end{CompactList}\end{CompactItemize}
131\end{Indent}
132\begin{Indent}{\bf Connection to other classes}\par
133{\em Description of the random quantity via attribute {\tt rv} is optional. For operations such as sampling {\tt rv} does not need to be set. However, for {\tt marginalization} and {\tt conditioning} {\tt rv} has to be set. NB: }\begin{CompactItemize}
134\item 
135\hypertarget{classbdm_1_1epdf_f423e28448dbb69ef4905295ec8de8ff}{
136void \hyperlink{classbdm_1_1epdf_f423e28448dbb69ef4905295ec8de8ff}{set\_\-rv} (const \hyperlink{classbdm_1_1RV}{RV} \&rv0)}
137\label{classbdm_1_1epdf_f423e28448dbb69ef4905295ec8de8ff}
138
139\begin{CompactList}\small\item\em Name its rv. \item\end{CompactList}\item 
140\hypertarget{classbdm_1_1epdf_c4b863ff84c7a4882fb3ad18556027f9}{
141bool \hyperlink{classbdm_1_1epdf_c4b863ff84c7a4882fb3ad18556027f9}{isnamed} () const }
142\label{classbdm_1_1epdf_c4b863ff84c7a4882fb3ad18556027f9}
143
144\begin{CompactList}\small\item\em True if rv is assigned. \item\end{CompactList}\item 
145\hypertarget{classbdm_1_1epdf_a4ab378d5e004c3ff3e2d4e64f7bba21}{
146const \hyperlink{classbdm_1_1RV}{RV} \& \hyperlink{classbdm_1_1epdf_a4ab378d5e004c3ff3e2d4e64f7bba21}{\_\-rv} () const }
147\label{classbdm_1_1epdf_a4ab378d5e004c3ff3e2d4e64f7bba21}
148
149\begin{CompactList}\small\item\em Return name (fails when isnamed is false). \item\end{CompactList}\end{CompactItemize}
150\end{Indent}
151\begin{Indent}{\bf Access to attributes}\par
152\begin{CompactItemize}
153\item 
154\hypertarget{classbdm_1_1epdf_7083a65f7b7a0d0d13b2c516bd2ec29c}{
155int \hyperlink{classbdm_1_1epdf_7083a65f7b7a0d0d13b2c516bd2ec29c}{dimension} () const }
156\label{classbdm_1_1epdf_7083a65f7b7a0d0d13b2c516bd2ec29c}
157
158\begin{CompactList}\small\item\em Size of the random variable. \item\end{CompactList}\end{CompactItemize}
159\end{Indent}
160\subsection*{Protected Attributes}
161\begin{CompactItemize}
162\item 
163\hypertarget{classbdm_1_1merger_67ae71cbf0686d7c7bf116fa5db86d81}{
164\hyperlink{classbdm_1_1MixEF}{MixEF} \hyperlink{classbdm_1_1merger_67ae71cbf0686d7c7bf116fa5db86d81}{Mix}}
165\label{classbdm_1_1merger_67ae71cbf0686d7c7bf116fa5db86d81}
166
167\begin{CompactList}\small\item\em Internal mixture of EF models. \item\end{CompactList}\item 
168\hypertarget{classbdm_1_1merger_ea3c9f4739f857877fd5285b3973289c}{
169Array$<$ \hyperlink{classbdm_1_1datalink__m2e}{datalink\_\-m2e} $\ast$ $>$ \hyperlink{classbdm_1_1merger_ea3c9f4739f857877fd5285b3973289c}{dls}}
170\label{classbdm_1_1merger_ea3c9f4739f857877fd5285b3973289c}
171
172\begin{CompactList}\small\item\em Data link for each \hyperlink{classbdm_1_1mpdf}{mpdf} in mpdfs. \item\end{CompactList}\item 
173\hypertarget{classbdm_1_1merger_135b938f841cb88ad00a8bbded818703}{
174Array$<$ \hyperlink{classbdm_1_1RV}{RV} $>$ \hyperlink{classbdm_1_1merger_135b938f841cb88ad00a8bbded818703}{rvzs}}
175\label{classbdm_1_1merger_135b938f841cb88ad00a8bbded818703}
176
177\begin{CompactList}\small\item\em Array of rvs that are not modelled by mpdfs at all (aux). \item\end{CompactList}\item 
178\hypertarget{classbdm_1_1merger_6c48bf36ec1f3f7b52e3159cf428a193}{
179Array$<$ \hyperlink{classbdm_1_1datalink__m2e}{datalink\_\-m2e} $\ast$ $>$ \hyperlink{classbdm_1_1merger_6c48bf36ec1f3f7b52e3159cf428a193}{zdls}}
180\label{classbdm_1_1merger_6c48bf36ec1f3f7b52e3159cf428a193}
181
182\begin{CompactList}\small\item\em Data Links of rv0 mpdfs - these will be conditioned the (rv,rvc) of mpdfs. \item\end{CompactList}\item 
183\hypertarget{classbdm_1_1merger_e91b83e6d9076848c71ae27664072109}{
184int \hyperlink{classbdm_1_1merger_e91b83e6d9076848c71ae27664072109}{Ns}}
185\label{classbdm_1_1merger_e91b83e6d9076848c71ae27664072109}
186
187\begin{CompactList}\small\item\em Number of samples used in approximation. \item\end{CompactList}\item 
188\hypertarget{classbdm_1_1merger_214ca7c566e8f75d45bb243d7c74580d}{
189int \hyperlink{classbdm_1_1merger_214ca7c566e8f75d45bb243d7c74580d}{Nc}}
190\label{classbdm_1_1merger_214ca7c566e8f75d45bb243d7c74580d}
191
192\begin{CompactList}\small\item\em Number of components in a mixture. \item\end{CompactList}\item 
193\hypertarget{classbdm_1_1merger_1a85d299f202a70afe0cdc1045c26a5d}{
194double \hyperlink{classbdm_1_1merger_1a85d299f202a70afe0cdc1045c26a5d}{beta}}
195\label{classbdm_1_1merger_1a85d299f202a70afe0cdc1045c26a5d}
196
197\begin{CompactList}\small\item\em Prior on the log-normal merging model. \item\end{CompactList}\item 
198\hypertarget{classbdm_1_1merger_522d43f7aa13fe6701e93fba174dec94}{
199\hyperlink{classbdm_1_1eEmp}{eEmp} \hyperlink{classbdm_1_1merger_522d43f7aa13fe6701e93fba174dec94}{eSmp}}
200\label{classbdm_1_1merger_522d43f7aa13fe6701e93fba174dec94}
201
202\begin{CompactList}\small\item\em Projection to empirical density. \item\end{CompactList}\item 
203\hypertarget{classbdm_1_1compositepdf_7ca3cd8ed92a7154f5b9ff13b1e9d52a}{
204int \hyperlink{classbdm_1_1compositepdf_7ca3cd8ed92a7154f5b9ff13b1e9d52a}{n}}
205\label{classbdm_1_1compositepdf_7ca3cd8ed92a7154f5b9ff13b1e9d52a}
206
207\begin{CompactList}\small\item\em Number of mpdfs in the composite. \item\end{CompactList}\item 
208\hypertarget{classbdm_1_1compositepdf_23faf2debc4dde10836393b8c665914a}{
209Array$<$ \hyperlink{classbdm_1_1mpdf}{mpdf} $\ast$ $>$ \hyperlink{classbdm_1_1compositepdf_23faf2debc4dde10836393b8c665914a}{mpdfs}}
210\label{classbdm_1_1compositepdf_23faf2debc4dde10836393b8c665914a}
211
212\begin{CompactList}\small\item\em Elements of composition. \item\end{CompactList}\item 
213\hypertarget{classbdm_1_1epdf_16adac20ec7fe07e1ea0b27d917788ce}{
214int \hyperlink{classbdm_1_1epdf_16adac20ec7fe07e1ea0b27d917788ce}{dim}}
215\label{classbdm_1_1epdf_16adac20ec7fe07e1ea0b27d917788ce}
216
217\begin{CompactList}\small\item\em dimension of the random variable \item\end{CompactList}\item 
218\hypertarget{classbdm_1_1epdf_62c5b8ff71d9ebe6cd58d3c342eb1dc8}{
219\hyperlink{classbdm_1_1RV}{RV} \hyperlink{classbdm_1_1epdf_62c5b8ff71d9ebe6cd58d3c342eb1dc8}{rv}}
220\label{classbdm_1_1epdf_62c5b8ff71d9ebe6cd58d3c342eb1dc8}
221
222\begin{CompactList}\small\item\em Description of the random variable. \item\end{CompactList}\end{CompactItemize}
223
224
225\subsection{Member Function Documentation}
226\hypertarget{classbdm_1_1merger_0ef73e76eeee44c8e3896e3a271ad974}{
227\index{bdm::merger@{bdm::merger}!sample@{sample}}
228\index{sample@{sample}!bdm::merger@{bdm::merger}}
229\subsubsection[sample]{\setlength{\rightskip}{0pt plus 5cm}vec bdm::merger::sample () const\hspace{0.3cm}{\tt  \mbox{[}inline, virtual\mbox{]}}}}
230\label{classbdm_1_1merger_0ef73e76eeee44c8e3896e3a271ad974}
231
232
233sample from merged density weight w is a
234
235Reimplemented from \hyperlink{classbdm_1_1epdf_75ba57a89681a8efec488f5796c7cc1b}{bdm::epdf}.
236
237References Mix, bdm::MixEF::posterior(), and bdm::epdf::sample().\hypertarget{classbdm_1_1compositepdf_c73d39acc4378eee6a63155c3517d3c9}{
238\index{bdm::merger@{bdm::merger}!getrv@{getrv}}
239\index{getrv@{getrv}!bdm::merger@{bdm::merger}}
240\subsubsection[getrv]{\setlength{\rightskip}{0pt plus 5cm}{\bf RV} bdm::compositepdf::getrv (bool {\em checkoverlap} = {\tt false})\hspace{0.3cm}{\tt  \mbox{[}inherited\mbox{]}}}}
241\label{classbdm_1_1compositepdf_c73d39acc4378eee6a63155c3517d3c9}
242
243
244find common rv, flag
245
246\begin{Desc}
247\item[Parameters:]
248\begin{description}
249\item[{\em checkoverlap}]modifies whether overlaps are acceptable \end{description}
250\end{Desc}
251
252
253References bdm::RV::add(), bdm::compositepdf::mpdfs, and bdm::compositepdf::n.
254
255Referenced by bdm::mprod::mprod().
256
257The documentation for this class was generated from the following files:\begin{CompactItemize}
258\item 
259\hyperlink{merger_8h}{merger.h}\item 
260merger.cpp\end{CompactItemize}
Note: See TracBrowser for help on using the browser.