\hypertarget{classbdm_1_1RV}{
\section{bdm::RV Class Reference}
\label{classbdm_1_1RV}\index{bdm::RV@{bdm::RV}}
}
Class representing variables, most often random variables.  


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

Inheritance diagram for bdm::RV:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=64pt]{classbdm_1_1RV__inherit__graph}
\end{center}
\end{figure}
Collaboration diagram for bdm::RV:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=64pt]{classbdm_1_1RV__coll__graph}
\end{center}
\end{figure}
\subsection*{Public Member Functions}
\begin{CompactItemize}
\item 
\hypertarget{classbdm_1_1RV_3d93da01a64dab31074b25b7d93e5eae}{
\hyperlink{classbdm_1_1RV_3d93da01a64dab31074b25b7d93e5eae}{RV} (Array$<$ std::string $>$ in\_\-names, ivec in\_\-sizes, ivec in\_\-times)}
\label{classbdm_1_1RV_3d93da01a64dab31074b25b7d93e5eae}

\begin{CompactList}\small\item\em Full constructor. \item\end{CompactList}\item 
\hypertarget{classbdm_1_1RV_5bd1bd9ec51b91578ecc83a6b2398a20}{
\hyperlink{classbdm_1_1RV_5bd1bd9ec51b91578ecc83a6b2398a20}{RV} (Array$<$ std::string $>$ in\_\-names, ivec in\_\-sizes)}
\label{classbdm_1_1RV_5bd1bd9ec51b91578ecc83a6b2398a20}

\begin{CompactList}\small\item\em Constructor with times=0. \item\end{CompactList}\item 
\hypertarget{classbdm_1_1RV_a222dfef569e8f123180d40fde97c1cd}{
\hyperlink{classbdm_1_1RV_a222dfef569e8f123180d40fde97c1cd}{RV} (Array$<$ std::string $>$ in\_\-names)}
\label{classbdm_1_1RV_a222dfef569e8f123180d40fde97c1cd}

\begin{CompactList}\small\item\em Constructor with sizes=1, times=0. \item\end{CompactList}\item 
\hypertarget{classbdm_1_1RV_e319ca900261a5005a9b4b353ec16412}{
\hyperlink{classbdm_1_1RV_e319ca900261a5005a9b4b353ec16412}{RV} ()}
\label{classbdm_1_1RV_e319ca900261a5005a9b4b353ec16412}

\begin{CompactList}\small\item\em Constructor of empty \hyperlink{classbdm_1_1RV}{RV}. \item\end{CompactList}\item 
\hypertarget{classbdm_1_1RV_2174751a00ce19f941edd2c1a861be67}{
int \hyperlink{classbdm_1_1RV_2174751a00ce19f941edd2c1a861be67}{count} () const }
\label{classbdm_1_1RV_2174751a00ce19f941edd2c1a861be67}

\begin{CompactList}\small\item\em Return number of scalars in the \hyperlink{classbdm_1_1RV}{RV}. \item\end{CompactList}\item 
\hypertarget{classbdm_1_1RV_e9ec8c3e756651ff352ab5e3d3acda4b}{
int \hyperlink{classbdm_1_1RV_e9ec8c3e756651ff352ab5e3d3acda4b}{length} () const }
\label{classbdm_1_1RV_e9ec8c3e756651ff352ab5e3d3acda4b}

\begin{CompactList}\small\item\em Return length (number of entries) of the \hyperlink{classbdm_1_1RV}{RV}. \item\end{CompactList}\item 
ivec \hyperlink{classbdm_1_1RV_1367055b2608ad9d50d01a2da6cec869}{findself} (const \hyperlink{classbdm_1_1RV}{RV} \&rv2) const 
\begin{CompactList}\small\item\em Find indexes of self in another rv,. \item\end{CompactList}\item 
\hypertarget{classbdm_1_1RV_3bb011af88ae98f5c97955bb2c95cfee}{
bool \hyperlink{classbdm_1_1RV_3bb011af88ae98f5c97955bb2c95cfee}{equal} (const \hyperlink{classbdm_1_1RV}{RV} \&rv2) const }
\label{classbdm_1_1RV_3bb011af88ae98f5c97955bb2c95cfee}

\begin{CompactList}\small\item\em Compare if {\tt rv2} is identical to this {\tt \hyperlink{classbdm_1_1RV}{RV}}. \item\end{CompactList}\item 
bool \hyperlink{classbdm_1_1RV_87841b5ee43997b79789c0c22047e224}{add} (const \hyperlink{classbdm_1_1RV}{RV} \&rv2)
\begin{CompactList}\small\item\em Add (concat) another variable to the current one,. \item\end{CompactList}\item 
\hypertarget{classbdm_1_1RV_aec44dabdf0a6d90fbae95e1356eda39}{
\hyperlink{classbdm_1_1RV}{RV} \hyperlink{classbdm_1_1RV_aec44dabdf0a6d90fbae95e1356eda39}{subt} (const \hyperlink{classbdm_1_1RV}{RV} \&rv2) const }
\label{classbdm_1_1RV_aec44dabdf0a6d90fbae95e1356eda39}

\begin{CompactList}\small\item\em Subtract another variable from the current one. \item\end{CompactList}\item 
\hypertarget{classbdm_1_1RV_c0c04ab99ded62e1e05bcefb151ebeb9}{
\hyperlink{classbdm_1_1RV}{RV} \hyperlink{classbdm_1_1RV_c0c04ab99ded62e1e05bcefb151ebeb9}{subselect} (const ivec \&ind) const }
\label{classbdm_1_1RV_c0c04ab99ded62e1e05bcefb151ebeb9}

\begin{CompactList}\small\item\em Select only variables at indeces ind. \item\end{CompactList}\item 
\hypertarget{classbdm_1_1RV_6f3daf0f857fff53a1c0a445fe160966}{
\hyperlink{classbdm_1_1RV}{RV} \hyperlink{classbdm_1_1RV_6f3daf0f857fff53a1c0a445fe160966}{operator()} (const ivec \&ind) const }
\label{classbdm_1_1RV_6f3daf0f857fff53a1c0a445fe160966}

\begin{CompactList}\small\item\em Select only variables at indeces ind. \item\end{CompactList}\item 
\hypertarget{classbdm_1_1RV_bd77cb0899f7fba1d0e34396137b7f1f}{
void \hyperlink{classbdm_1_1RV_bd77cb0899f7fba1d0e34396137b7f1f}{t} (int delta)}
\label{classbdm_1_1RV_bd77cb0899f7fba1d0e34396137b7f1f}

\begin{CompactList}\small\item\em Shift {\tt time} shifted by delta. \item\end{CompactList}\item 
\hypertarget{classbdm_1_1RV_8bdd7f4072749c7cc864b78a418ca388}{
\hyperlink{classbdm_1_1str}{str} \hyperlink{classbdm_1_1RV_8bdd7f4072749c7cc864b78a418ca388}{tostr} () const }
\label{classbdm_1_1RV_8bdd7f4072749c7cc864b78a418ca388}

\begin{CompactList}\small\item\em generate {\tt \hyperlink{classbdm_1_1str}{str}} from rv, by expanding sizes \item\end{CompactList}\item 
ivec \hyperlink{classbdm_1_1RV_cbebdb5e0d30101a6eb63550ef701c55}{dataind} (const \hyperlink{classbdm_1_1RV}{RV} \&crv) const 
\item 
void \hyperlink{classbdm_1_1RV_c92b92ecfd95c89be13ab3e6cb6855c1}{dataind} (const \hyperlink{classbdm_1_1RV}{RV} \&rv2, ivec \&selfi, ivec \&rv2i) const 
\item 
\hypertarget{classbdm_1_1RV_8bfda300b769a05598c55cb94fe61f52}{
int \hyperlink{classbdm_1_1RV_8bfda300b769a05598c55cb94fe61f52}{mint} ()}
\label{classbdm_1_1RV_8bfda300b769a05598c55cb94fe61f52}

\begin{CompactList}\small\item\em Minimum time-offset. \item\end{CompactList}\item 
\hypertarget{classbdm_1_1RV_ae0c6e729851a43c82a5b1c199474ef2}{
Array$<$ std::string $>$ \& \hyperlink{classbdm_1_1RV_ae0c6e729851a43c82a5b1c199474ef2}{\_\-names} ()}
\label{classbdm_1_1RV_ae0c6e729851a43c82a5b1c199474ef2}

\begin{CompactList}\small\item\em access function \item\end{CompactList}\item 
\hypertarget{classbdm_1_1RV_172390b8525ef5aac684228241fff7b5}{
int \hyperlink{classbdm_1_1RV_172390b8525ef5aac684228241fff7b5}{id} (int at)}
\label{classbdm_1_1RV_172390b8525ef5aac684228241fff7b5}

\begin{CompactList}\small\item\em access function \item\end{CompactList}\item 
\hypertarget{classbdm_1_1RV_8e64d02005a02aef72f214286977d8de}{
int \hyperlink{classbdm_1_1RV_8e64d02005a02aef72f214286977d8de}{size} (int at)}
\label{classbdm_1_1RV_8e64d02005a02aef72f214286977d8de}

\begin{CompactList}\small\item\em access function \item\end{CompactList}\item 
\hypertarget{classbdm_1_1RV_aff4de8185750b506492623847520518}{
int \hyperlink{classbdm_1_1RV_aff4de8185750b506492623847520518}{time} (int at)}
\label{classbdm_1_1RV_aff4de8185750b506492623847520518}

\begin{CompactList}\small\item\em access function \item\end{CompactList}\item 
\hypertarget{classbdm_1_1RV_d05af87595cfb7fa2e0fadeae5597fa8}{
std::string \hyperlink{classbdm_1_1RV_d05af87595cfb7fa2e0fadeae5597fa8}{name} (int at)}
\label{classbdm_1_1RV_d05af87595cfb7fa2e0fadeae5597fa8}

\begin{CompactList}\small\item\em access function \item\end{CompactList}\item 
\hypertarget{classbdm_1_1RV_602cea0aecebc5146d81657df5127543}{
void \hyperlink{classbdm_1_1RV_602cea0aecebc5146d81657df5127543}{set\_\-id} (int at, int id0)}
\label{classbdm_1_1RV_602cea0aecebc5146d81657df5127543}

\begin{CompactList}\small\item\em access function \item\end{CompactList}\item 
\hypertarget{classbdm_1_1RV_0b2c9e73ff66847c3644ebc3eb559a03}{
void \hyperlink{classbdm_1_1RV_0b2c9e73ff66847c3644ebc3eb559a03}{set\_\-size} (int at, int size0)}
\label{classbdm_1_1RV_0b2c9e73ff66847c3644ebc3eb559a03}

\begin{CompactList}\small\item\em access function \item\end{CompactList}\item 
\hypertarget{classbdm_1_1RV_fb2892d12dc978549e9491aed327dfd4}{
void \hyperlink{classbdm_1_1RV_fb2892d12dc978549e9491aed327dfd4}{set\_\-time} (int at, int time0)}
\label{classbdm_1_1RV_fb2892d12dc978549e9491aed327dfd4}

\begin{CompactList}\small\item\em access function \item\end{CompactList}\item 
\hypertarget{classbdm_1_1RV_176e9c0c35b51fee0ad8813a39883a63}{
void \hyperlink{classbdm_1_1RV_176e9c0c35b51fee0ad8813a39883a63}{newids} ()}
\label{classbdm_1_1RV_176e9c0c35b51fee0ad8813a39883a63}

\begin{CompactList}\small\item\em Assign unused ids to this rv. \item\end{CompactList}\end{CompactItemize}
\subsection*{Protected Attributes}
\begin{CompactItemize}
\item 
\hypertarget{classbdm_1_1RV_38203096d950671def44de8cf1c6bb2e}{
int \hyperlink{classbdm_1_1RV_38203096d950671def44de8cf1c6bb2e}{tsize}}
\label{classbdm_1_1RV_38203096d950671def44de8cf1c6bb2e}

\begin{CompactList}\small\item\em size = sum of sizes \item\end{CompactList}\item 
\hypertarget{classbdm_1_1RV_b11bfdceb831ed30d33b852dd4a6b385}{
int \hyperlink{classbdm_1_1RV_b11bfdceb831ed30d33b852dd4a6b385}{len}}
\label{classbdm_1_1RV_b11bfdceb831ed30d33b852dd4a6b385}

\begin{CompactList}\small\item\em len = number of individual rvs \item\end{CompactList}\item 
\hypertarget{classbdm_1_1RV_0a9a4769ab5a322495bea0cd8091500b}{
ivec \hyperlink{classbdm_1_1RV_0a9a4769ab5a322495bea0cd8091500b}{ids}}
\label{classbdm_1_1RV_0a9a4769ab5a322495bea0cd8091500b}

\begin{CompactList}\small\item\em Vector of unique IDs. \item\end{CompactList}\item 
\hypertarget{classbdm_1_1RV_0112d25045f6f8fabdc9e821029928ee}{
ivec \hyperlink{classbdm_1_1RV_0112d25045f6f8fabdc9e821029928ee}{sizes}}
\label{classbdm_1_1RV_0112d25045f6f8fabdc9e821029928ee}

\begin{CompactList}\small\item\em Vector of sizes. \item\end{CompactList}\item 
\hypertarget{classbdm_1_1RV_ef6703854820bbf61736738f1bac6896}{
ivec \hyperlink{classbdm_1_1RV_ef6703854820bbf61736738f1bac6896}{times}}
\label{classbdm_1_1RV_ef6703854820bbf61736738f1bac6896}

\begin{CompactList}\small\item\em Vector of shifts from current time. \item\end{CompactList}\item 
\hypertarget{classbdm_1_1RV_9a87c46918c3c0db0bdca854a48a44aa}{
Array$<$ std::string $>$ \hyperlink{classbdm_1_1RV_9a87c46918c3c0db0bdca854a48a44aa}{names}}
\label{classbdm_1_1RV_9a87c46918c3c0db0bdca854a48a44aa}

\begin{CompactList}\small\item\em Array of names. \item\end{CompactList}\end{CompactItemize}
\subsection*{Friends}
\begin{CompactItemize}
\item 
\hypertarget{classbdm_1_1RV_cad6f15535d10437f6690cb4492176a8}{
std::ostream \& \hyperlink{classbdm_1_1RV_cad6f15535d10437f6690cb4492176a8}{operator$<$$<$} (std::ostream \&os, const \hyperlink{classbdm_1_1RV}{RV} \&rv)}
\label{classbdm_1_1RV_cad6f15535d10437f6690cb4492176a8}

\begin{CompactList}\small\item\em Printing output e.g. for debugging. \item\end{CompactList}\end{CompactItemize}


\subsection{Detailed Description}
Class representing variables, most often random variables. 

More?... 

\subsection{Member Function Documentation}
\hypertarget{classbdm_1_1RV_1367055b2608ad9d50d01a2da6cec869}{
\index{bdm::RV@{bdm::RV}!findself@{findself}}
\index{findself@{findself}!bdm::RV@{bdm::RV}}
\subsubsection[findself]{\setlength{\rightskip}{0pt plus 5cm}ivec bdm::RV::findself (const {\bf RV} \& {\em rv2}) const}}
\label{classbdm_1_1RV_1367055b2608ad9d50d01a2da6cec869}


Find indexes of self in another rv,. 

\begin{Desc}
\item[Returns:]ivec of the same size as self. \end{Desc}


References ids, len, length(), and times.

Referenced by add(), dataind(), and subt().\hypertarget{classbdm_1_1RV_87841b5ee43997b79789c0c22047e224}{
\index{bdm::RV@{bdm::RV}!add@{add}}
\index{add@{add}!bdm::RV@{bdm::RV}}
\subsubsection[add]{\setlength{\rightskip}{0pt plus 5cm}bool bdm::RV::add (const {\bf RV} \& {\em rv2})}}
\label{classbdm_1_1RV_87841b5ee43997b79789c0c22047e224}


Add (concat) another variable to the current one,. 

\begin{Desc}
\item[Returns:]true if all rv2 were added, false if rv2 is in conflict \end{Desc}


References bdm::concat(), findself(), ids, len, names, sizes, times, and tsize.

Referenced by bdm::concat(), bdm::compositepdf::getrv(), bdm::merger::merger(), bdm::MPF$<$ BM\_\-T $>$::MPF(), and bdm::compositepdf::setrvc().\hypertarget{classbdm_1_1RV_cbebdb5e0d30101a6eb63550ef701c55}{
\index{bdm::RV@{bdm::RV}!dataind@{dataind}}
\index{dataind@{dataind}!bdm::RV@{bdm::RV}}
\subsubsection[dataind]{\setlength{\rightskip}{0pt plus 5cm}ivec bdm::RV::dataind (const {\bf RV} \& {\em crv}) const}}
\label{classbdm_1_1RV_cbebdb5e0d30101a6eb63550ef701c55}


when this rv is a part of bigger rv, this function returns indeces of self in the data vector of the bigger crv. Then, data can be copied via: data\_\-of\_\-this = cdata(ind); 

References bdm::concat(), count(), ids, bdm::str::ids, len, times, bdm::str::times, tostr(), and tsize.

Referenced by bdm::enorm$<$ sq\_\-T $>$::condition(), bdm::datalink\_\-m2e::datalink\_\-m2e(), bdm::datalink\_\-m2m::datalink\_\-m2m(), and bdm::enorm$<$ sq\_\-T $>$::marginal().\hypertarget{classbdm_1_1RV_c92b92ecfd95c89be13ab3e6cb6855c1}{
\index{bdm::RV@{bdm::RV}!dataind@{dataind}}
\index{dataind@{dataind}!bdm::RV@{bdm::RV}}
\subsubsection[dataind]{\setlength{\rightskip}{0pt plus 5cm}void bdm::RV::dataind (const {\bf RV} \& {\em rv2}, \/  ivec \& {\em selfi}, \/  ivec \& {\em rv2i}) const}}
\label{classbdm_1_1RV_c92b92ecfd95c89be13ab3e6cb6855c1}


generate mutual indeces when copying data betwenn self and crv. Data are copied via: data\_\-of\_\-this(selfi) = data\_\-of\_\-rv2(rv2i) 

References bdm::concat(), findself(), ids, bdm::str::ids, len, length(), times, bdm::str::times, and tostr().

The documentation for this class was generated from the following files:\begin{CompactItemize}
\item 
\hyperlink{libBM_8h}{libBM.h}\item 
libBM.cpp\end{CompactItemize}
