[37] | 1 | \section{KalmanCh Class Reference} |
---|
| 2 | \label{classKalmanCh}\index{KalmanCh@{KalmanCh}} |
---|
| 3 | \doxyref{Kalman}{p.}{classKalman} filter in square root form. |
---|
| 4 | |
---|
| 5 | |
---|
| 6 | {\tt \#include $<$libKF.h$>$} |
---|
| 7 | |
---|
| 8 | Inheritance diagram for KalmanCh:\nopagebreak |
---|
| 9 | \begin{figure}[H] |
---|
| 10 | \begin{center} |
---|
| 11 | \leavevmode |
---|
[91] | 12 | \includegraphics[width=95pt]{classKalmanCh__inherit__graph} |
---|
[37] | 13 | \end{center} |
---|
| 14 | \end{figure} |
---|
| 15 | Collaboration diagram for KalmanCh:\nopagebreak |
---|
| 16 | \begin{figure}[H] |
---|
| 17 | \begin{center} |
---|
| 18 | \leavevmode |
---|
[79] | 19 | \includegraphics[width=400pt]{classKalmanCh__coll__graph} |
---|
[37] | 20 | \end{center} |
---|
| 21 | \end{figure} |
---|
| 22 | \subsection*{Public Member Functions} |
---|
| 23 | \begin{CompactItemize} |
---|
| 24 | \item |
---|
| 25 | {\bf KalmanCh} ({\bf RV} rvx0, {\bf RV} rvy0, {\bf RV} rvu0)\label{classKalmanCh_d11f110cccaa66177514632d37b086bb} |
---|
| 26 | |
---|
| 27 | \begin{CompactList}\small\item\em Default constructor. \item\end{CompactList}\item |
---|
| 28 | void {\bf set\_\-parameters} (const mat \&A0, const mat \&B0, const mat \&C0, const mat \&D0, const {\bf chmat} \&R0, const {\bf chmat} \&Q0)\label{classKalmanCh_92fb227287af05c9f0078d523c7c9793} |
---|
| 29 | |
---|
| 30 | \begin{CompactList}\small\item\em Set parameters with check of relevance. \item\end{CompactList}\item |
---|
[79] | 31 | void {\bf set\_\-est} (const vec \&mu0, const {\bf chmat} \&P0)\label{classKalmanCh_b261b20f6210d4c85131d33302df0adc} |
---|
[37] | 32 | |
---|
| 33 | \begin{CompactList}\small\item\em Set estimate values, used e.g. in initialization. \item\end{CompactList}\item |
---|
[79] | 34 | void {\bf bayes} (const vec \&dt) |
---|
| 35 | \begin{CompactList}\small\item\em Here dt = [yt;ut] of appropriate dimensions. \item\end{CompactList}\item |
---|
| 36 | void {\bf bayes} (mat Dt)\label{classBM_87b07867fd4c133aa89a18543f68d9f9} |
---|
[37] | 37 | |
---|
[79] | 38 | \begin{CompactList}\small\item\em Batch Bayes rule (columns of Dt are observations). \item\end{CompactList}\item |
---|
| 39 | {\bf epdf} \& {\bf \_\-epdf} ()\label{classKalman_a213c57aef55b2645e550bed81cfc0d4} |
---|
[37] | 40 | |
---|
| 41 | \begin{CompactList}\small\item\em access function \item\end{CompactList}\item |
---|
[79] | 42 | mat \& {\bf \_\-\_\-K} ()\label{classKalman_980fcd41c6c548c5da7b8b67c8e6da79} |
---|
[37] | 43 | |
---|
| 44 | \begin{CompactList}\small\item\em access function \item\end{CompactList}\item |
---|
[79] | 45 | vec {\bf \_\-dP} ()\label{classKalman_ac9540f3850b74d89a5fe4db6fc358ce} |
---|
[37] | 46 | |
---|
[79] | 47 | \begin{CompactList}\small\item\em access function \item\end{CompactList}\item |
---|
[37] | 48 | const {\bf RV} \& {\bf \_\-rv} () const \label{classBM_126bd2595c48e311fc2a7ab72876092a} |
---|
| 49 | |
---|
| 50 | \begin{CompactList}\small\item\em access function \item\end{CompactList}\item |
---|
| 51 | double {\bf \_\-ll} () const \label{classBM_87f4a547d2c29180be88175e5eab9c88} |
---|
| 52 | |
---|
| 53 | \begin{CompactList}\small\item\em access function \item\end{CompactList}\end{CompactItemize} |
---|
| 54 | \subsection*{Protected Attributes} |
---|
| 55 | \begin{CompactItemize} |
---|
| 56 | \item |
---|
[79] | 57 | mat {\bf preA}\label{classKalmanCh_94ee9da75b0e0f632e4a354988ca3798} |
---|
[37] | 58 | |
---|
[79] | 59 | \begin{CompactList}\small\item\em pre array (triangular matrix) \item\end{CompactList}\item |
---|
| 60 | mat {\bf postA}\label{classKalmanCh_0d31a26dc72b5846cfe5af3ccb63ac87} |
---|
| 61 | |
---|
| 62 | \begin{CompactList}\small\item\em post array (triangular matrix) \item\end{CompactList}\item |
---|
| 63 | {\bf RV} {\bf rvy}\label{classKalman_7501230c2fafa3655887d2da23b3184c} |
---|
| 64 | |
---|
[37] | 65 | \begin{CompactList}\small\item\em Indetifier of output rv. \item\end{CompactList}\item |
---|
[79] | 66 | {\bf RV} {\bf rvu}\label{classKalman_44a16ffd5ac1e6e39bae34fea9e1e498} |
---|
[37] | 67 | |
---|
| 68 | \begin{CompactList}\small\item\em Indetifier of exogeneous rv. \item\end{CompactList}\item |
---|
[79] | 69 | int {\bf dimx}\label{classKalman_39c8c403b46fa3b8c7da77cb2e3729eb} |
---|
[37] | 70 | |
---|
| 71 | \begin{CompactList}\small\item\em cache of rv.count() \item\end{CompactList}\item |
---|
[79] | 72 | int {\bf dimy}\label{classKalman_ba17b956df1e38b31fbbc299c8213b6a} |
---|
[37] | 73 | |
---|
| 74 | \begin{CompactList}\small\item\em cache of rvy.count() \item\end{CompactList}\item |
---|
[79] | 75 | int {\bf dimu}\label{classKalman_b0153795a1444b6968a86409c778d9ce} |
---|
[37] | 76 | |
---|
| 77 | \begin{CompactList}\small\item\em cache of rvu.count() \item\end{CompactList}\item |
---|
[79] | 78 | mat {\bf A}\label{classKalman_5e02efe86ee91e9c74b93b425fe060b9} |
---|
[37] | 79 | |
---|
| 80 | \begin{CompactList}\small\item\em Matrix A. \item\end{CompactList}\item |
---|
[79] | 81 | mat {\bf B}\label{classKalman_dc87704284a6c0bca13bf51f4345a50a} |
---|
[37] | 82 | |
---|
| 83 | \begin{CompactList}\small\item\em Matrix B. \item\end{CompactList}\item |
---|
[79] | 84 | mat {\bf C}\label{classKalman_86a805cd6515872d1132ad0d6eb5dc13} |
---|
[37] | 85 | |
---|
| 86 | \begin{CompactList}\small\item\em Matrix C. \item\end{CompactList}\item |
---|
[79] | 87 | mat {\bf D}\label{classKalman_d69f774ba3335c970c1c5b1d182f4dd1} |
---|
[37] | 88 | |
---|
| 89 | \begin{CompactList}\small\item\em Matrix D. \item\end{CompactList}\item |
---|
[79] | 90 | {\bf chmat} {\bf Q}\label{classKalman_9b69015c800eb93f3ee49da23a6f55d9} |
---|
[37] | 91 | |
---|
| 92 | \begin{CompactList}\small\item\em Matrix Q in square-root form. \item\end{CompactList}\item |
---|
[79] | 93 | {\bf chmat} {\bf R}\label{classKalman_11d171dc0e0ab111c56a70f98b97b3ec} |
---|
[37] | 94 | |
---|
| 95 | \begin{CompactList}\small\item\em Matrix R in square-root form. \item\end{CompactList}\item |
---|
[79] | 96 | {\bf enorm}$<$ {\bf chmat} $>$ {\bf est}\label{classKalman_5568c74bac67ae6d3b1061dba60c9424} |
---|
[37] | 97 | |
---|
[79] | 98 | \begin{CompactList}\small\item\em posterior density on \$x\_\-t\$ \item\end{CompactList}\item |
---|
| 99 | {\bf enorm}$<$ {\bf chmat} $>$ {\bf fy}\label{classKalman_e580ab06483952bd03f2e651763e184f} |
---|
[37] | 100 | |
---|
[79] | 101 | \begin{CompactList}\small\item\em preditive density on \$y\_\-t\$ \item\end{CompactList}\item |
---|
| 102 | mat {\bf \_\-K}\label{classKalman_d422f51467c7a06174af2476d2826132} |
---|
[37] | 103 | |
---|
[79] | 104 | \begin{CompactList}\small\item\em placeholder for \doxyref{Kalman}{p.}{classKalman} gain \item\end{CompactList}\item |
---|
| 105 | vec \& {\bf \_\-yp}\label{classKalman_764bbc95238eda11fc81c5ebd0b1dcfd} |
---|
[37] | 106 | |
---|
[79] | 107 | \begin{CompactList}\small\item\em cache of fy.mu \item\end{CompactList}\item |
---|
| 108 | {\bf chmat} \& {\bf \_\-Ry}\label{classKalman_45c9f928d2d62e0c884900fb3380f904} |
---|
[37] | 109 | |
---|
[79] | 110 | \begin{CompactList}\small\item\em cache of fy.R \item\end{CompactList}\item |
---|
| 111 | vec \& {\bf \_\-mu}\label{classKalman_fe803a81d2d847b0b1db3c6b29c18061} |
---|
[37] | 112 | |
---|
[79] | 113 | \begin{CompactList}\small\item\em cache of est.mu \item\end{CompactList}\item |
---|
| 114 | {\bf chmat} \& {\bf \_\-P}\label{classKalman_9fb808cc94a4c2652e1fb93be9bb7dcf} |
---|
[37] | 115 | |
---|
[79] | 116 | \begin{CompactList}\small\item\em cache of est.R \item\end{CompactList}\item |
---|
[37] | 117 | {\bf RV} {\bf rv}\label{classBM_af00f0612fabe66241dd507188cdbf88} |
---|
| 118 | |
---|
| 119 | \begin{CompactList}\small\item\em Random variable of the posterior. \item\end{CompactList}\item |
---|
| 120 | double {\bf ll}\label{classBM_5623fef6572a08c2b53b8c87b82dc979} |
---|
| 121 | |
---|
| 122 | \begin{CompactList}\small\item\em Logarithm of marginalized data likelihood. \item\end{CompactList}\item |
---|
| 123 | bool {\bf evalll}\label{classBM_bf6fb59b30141074f8ee1e2f43d03129} |
---|
| 124 | |
---|
| 125 | \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} |
---|
| 126 | |
---|
| 127 | |
---|
| 128 | \subsection{Detailed Description} |
---|
| 129 | \doxyref{Kalman}{p.}{classKalman} filter in square root form. |
---|
| 130 | |
---|
[79] | 131 | \subsection{Member Function Documentation} |
---|
| 132 | \index{KalmanCh@{KalmanCh}!bayes@{bayes}} |
---|
| 133 | \index{bayes@{bayes}!KalmanCh@{KalmanCh}} |
---|
| 134 | \subsubsection{\setlength{\rightskip}{0pt plus 5cm}void KalmanCh::bayes (const vec \& {\em dt})\hspace{0.3cm}{\tt [virtual]}}\label{classKalmanCh_cca758192846940409822b9bd778d4e1} |
---|
| 135 | |
---|
| 136 | |
---|
| 137 | Here dt = [yt;ut] of appropriate dimensions. |
---|
| 138 | |
---|
| 139 | The following equality hold::\[ \left[\begin{array}{cc} R^{0.5}\\ P_{t|t-1}^{0.5}C' & P_{t|t-1}^{0.5}CA'\\ & Q^{0.5}\end{array}\right]<\mathrm{orth.oper.}>=\left[\begin{array}{cc} R_{y}^{0.5} & KA'\\ & P_{t+1|t}^{0.5}\\ \\\end{array}\right]\] |
---|
| 140 | |
---|
| 141 | Thus this objevt evaluates only predictors! Not filtering densities. |
---|
| 142 | |
---|
| 143 | Reimplemented from {\bf Kalman$<$ chmat $>$} \doxyref{}{p.}{classKalman_7750ffd73f261828a32c18aaeb65c75c}. |
---|
| 144 | |
---|
| 145 | Reimplemented in {\bf EKFCh} \doxyref{}{p.}{classEKFCh_96f6edda324a0b7ef8b4e86cc7af60c1}. |
---|
| 146 | |
---|
[91] | 147 | References chmat::\_\-Ch(), Kalman$<$ chmat $>$::\_\-K, Kalman$<$ chmat $>$::\_\-mu, Kalman$<$ chmat $>$::\_\-P, Kalman$<$ chmat $>$::\_\-Ry, Kalman$<$ chmat $>$::\_\-yp, Kalman$<$ chmat $>$::A, Kalman$<$ chmat $>$::B, Kalman$<$ chmat $>$::C, Kalman$<$ chmat $>$::D, Kalman$<$ chmat $>$::dimu, Kalman$<$ chmat $>$::dimx, Kalman$<$ chmat $>$::dimy, BM::evalll, enorm$<$ sq\_\-T $>$::evalpdflog(), Kalman$<$ chmat $>$::fy, BM::ll, postA, preA, and chmat::to\_\-mat(). |
---|
| 148 | |
---|
[37] | 149 | The documentation for this class was generated from the following files:\begin{CompactItemize} |
---|
| 150 | \item |
---|
| 151 | work/mixpp/bdm/estim/{\bf libKF.h}\item |
---|
| 152 | work/mixpp/bdm/estim/libKF.cpp\end{CompactItemize} |
---|