1 | \hypertarget{classdiffbifn}{ |
---|
2 | \section{diffbifn Class Reference} |
---|
3 | \label{classdiffbifn}\index{diffbifn@{diffbifn}} |
---|
4 | } |
---|
5 | Class representing a differentiable function of two variables $f(x,u)$. |
---|
6 | |
---|
7 | |
---|
8 | {\tt \#include $<$libFN.h$>$} |
---|
9 | |
---|
10 | Inheritance diagram for diffbifn:\nopagebreak |
---|
11 | \begin{figure}[H] |
---|
12 | \begin{center} |
---|
13 | \leavevmode |
---|
14 | \includegraphics[width=400pt]{classdiffbifn__inherit__graph} |
---|
15 | \end{center} |
---|
16 | \end{figure} |
---|
17 | Collaboration diagram for diffbifn:\nopagebreak |
---|
18 | \begin{figure}[H] |
---|
19 | \begin{center} |
---|
20 | \leavevmode |
---|
21 | \includegraphics[width=60pt]{classdiffbifn__coll__graph} |
---|
22 | \end{center} |
---|
23 | \end{figure} |
---|
24 | \subsection*{Public Member Functions} |
---|
25 | \begin{CompactItemize} |
---|
26 | \item |
---|
27 | \hypertarget{classdiffbifn_ad7673e16aa1a046b131b24c731c4632}{ |
---|
28 | vec \hyperlink{classdiffbifn_ad7673e16aa1a046b131b24c731c4632}{eval} (const vec \&cond)} |
---|
29 | \label{classdiffbifn_ad7673e16aa1a046b131b24c731c4632} |
---|
30 | |
---|
31 | \begin{CompactList}\small\item\em Evaluates $f(x0,u0)$ (VS: Do we really need common eval? ). \item\end{CompactList}\item |
---|
32 | \hypertarget{classdiffbifn_40d8a7eee45acc55cda33d43282faa03}{ |
---|
33 | virtual vec \hyperlink{classdiffbifn_40d8a7eee45acc55cda33d43282faa03}{eval} (const vec \&x0, const vec \&u0)} |
---|
34 | \label{classdiffbifn_40d8a7eee45acc55cda33d43282faa03} |
---|
35 | |
---|
36 | \begin{CompactList}\small\item\em Evaluates $f(x0,u0)$. \item\end{CompactList}\item |
---|
37 | virtual void \hyperlink{classdiffbifn_6d217a02d4fa13931258d4bebdd0feb4}{dfdx\_\-cond} (const vec \&x0, const vec \&u0, mat \&A, bool full=true) |
---|
38 | \begin{CompactList}\small\item\em Evaluates $A=\frac{d}{dx}f(x,u)|_{x0,u0}$ and writes result into {\tt A} . \item\end{CompactList}\item |
---|
39 | virtual void \hyperlink{classdiffbifn_1978bafd7909d15c139a08c495c24aa0}{dfdu\_\-cond} (const vec \&x0, const vec \&u0, mat \&A, bool full=true) |
---|
40 | \begin{CompactList}\small\item\em Evaluates $A=\frac{d}{du}f(x,u)|_{x0,u0}$ and writes result into {\tt A} . \item\end{CompactList}\item |
---|
41 | \hypertarget{classdiffbifn_797772c0d5aab8ddccec19dfe4bb2d77}{ |
---|
42 | \hyperlink{classdiffbifn_797772c0d5aab8ddccec19dfe4bb2d77}{diffbifn} (int \hyperlink{classfnc_22d51d10a7901331167f64f80d1af8e9}{dimy}, const \hyperlink{classRV}{RV} rvx0, const \hyperlink{classRV}{RV} rvu0)} |
---|
43 | \label{classdiffbifn_797772c0d5aab8ddccec19dfe4bb2d77} |
---|
44 | |
---|
45 | \begin{CompactList}\small\item\em Default constructor (dimy is not set!). \item\end{CompactList}\item |
---|
46 | \hypertarget{classdiffbifn_436de7a7301ea9eac7d6081b893bbf57}{ |
---|
47 | int \hyperlink{classdiffbifn_436de7a7301ea9eac7d6081b893bbf57}{\_\-dimx} () const } |
---|
48 | \label{classdiffbifn_436de7a7301ea9eac7d6081b893bbf57} |
---|
49 | |
---|
50 | \begin{CompactList}\small\item\em access function \item\end{CompactList}\item |
---|
51 | \hypertarget{classdiffbifn_fc8779acbff170611aff0ee70cee3879}{ |
---|
52 | int \hyperlink{classdiffbifn_fc8779acbff170611aff0ee70cee3879}{\_\-dimu} () const } |
---|
53 | \label{classdiffbifn_fc8779acbff170611aff0ee70cee3879} |
---|
54 | |
---|
55 | \begin{CompactList}\small\item\em access function \item\end{CompactList}\item |
---|
56 | \hypertarget{classfnc_d28babf615a7240c34ee57779250f602}{ |
---|
57 | virtual void \hyperlink{classfnc_d28babf615a7240c34ee57779250f602}{condition} (const vec \&val)} |
---|
58 | \label{classfnc_d28babf615a7240c34ee57779250f602} |
---|
59 | |
---|
60 | \begin{CompactList}\small\item\em function substitutes given value into an appropriate position \item\end{CompactList}\item |
---|
61 | \hypertarget{classfnc_a8891973d0ca48ce38e1886df45ca298}{ |
---|
62 | int \hyperlink{classfnc_a8891973d0ca48ce38e1886df45ca298}{\_\-dimy} () const } |
---|
63 | \label{classfnc_a8891973d0ca48ce38e1886df45ca298} |
---|
64 | |
---|
65 | \begin{CompactList}\small\item\em access function \item\end{CompactList}\end{CompactItemize} |
---|
66 | \subsection*{Protected Attributes} |
---|
67 | \begin{CompactItemize} |
---|
68 | \item |
---|
69 | \hypertarget{classdiffbifn_bcf96b86250c3cbd465ba5ee62474b75}{ |
---|
70 | \hyperlink{classRV}{RV} \hyperlink{classdiffbifn_bcf96b86250c3cbd465ba5ee62474b75}{rvx}} |
---|
71 | \label{classdiffbifn_bcf96b86250c3cbd465ba5ee62474b75} |
---|
72 | |
---|
73 | \begin{CompactList}\small\item\em Indentifier of the first rv. \item\end{CompactList}\item |
---|
74 | \hypertarget{classdiffbifn_c41c74c7942dba51ef0b0bfed963447d}{ |
---|
75 | \hyperlink{classRV}{RV} \hyperlink{classdiffbifn_c41c74c7942dba51ef0b0bfed963447d}{rvu}} |
---|
76 | \label{classdiffbifn_c41c74c7942dba51ef0b0bfed963447d} |
---|
77 | |
---|
78 | \begin{CompactList}\small\item\em Indentifier of the second rv. \item\end{CompactList}\item |
---|
79 | \hypertarget{classdiffbifn_f6918bc0a9dad656b4cddc028137eb78}{ |
---|
80 | int \hyperlink{classdiffbifn_f6918bc0a9dad656b4cddc028137eb78}{dimx}} |
---|
81 | \label{classdiffbifn_f6918bc0a9dad656b4cddc028137eb78} |
---|
82 | |
---|
83 | \begin{CompactList}\small\item\em cache for rvx.count() \item\end{CompactList}\item |
---|
84 | \hypertarget{classdiffbifn_2e07ce491e973f03d763e37624d0fe79}{ |
---|
85 | int \hyperlink{classdiffbifn_2e07ce491e973f03d763e37624d0fe79}{dimu}} |
---|
86 | \label{classdiffbifn_2e07ce491e973f03d763e37624d0fe79} |
---|
87 | |
---|
88 | \begin{CompactList}\small\item\em cache for rvu.count() \item\end{CompactList}\item |
---|
89 | \hypertarget{classfnc_22d51d10a7901331167f64f80d1af8e9}{ |
---|
90 | int \hyperlink{classfnc_22d51d10a7901331167f64f80d1af8e9}{dimy}} |
---|
91 | \label{classfnc_22d51d10a7901331167f64f80d1af8e9} |
---|
92 | |
---|
93 | \begin{CompactList}\small\item\em Length of the output vector. \item\end{CompactList}\end{CompactItemize} |
---|
94 | |
---|
95 | |
---|
96 | \subsection{Detailed Description} |
---|
97 | Class representing a differentiable function of two variables $f(x,u)$. |
---|
98 | |
---|
99 | Function of two variables. |
---|
100 | |
---|
101 | TODO: 1) Technically, it could have a common parent (e.g. {\tt \hyperlink{classfnc}{fnc}} ) with other functions. For now, we keep it as it is. 2) It could be generalized into multivariate form, (which was original meaning of {\tt \hyperlink{classfnc}{fnc}} ). |
---|
102 | |
---|
103 | \subsection{Member Function Documentation} |
---|
104 | \hypertarget{classdiffbifn_6d217a02d4fa13931258d4bebdd0feb4}{ |
---|
105 | \index{diffbifn@{diffbifn}!dfdx\_\-cond@{dfdx\_\-cond}} |
---|
106 | \index{dfdx\_\-cond@{dfdx\_\-cond}!diffbifn@{diffbifn}} |
---|
107 | \subsubsection[dfdx\_\-cond]{\setlength{\rightskip}{0pt plus 5cm}virtual void diffbifn::dfdx\_\-cond (const vec \& {\em x0}, \/ const vec \& {\em u0}, \/ mat \& {\em A}, \/ bool {\em full} = {\tt true})\hspace{0.3cm}{\tt \mbox{[}inline, virtual\mbox{]}}}} |
---|
108 | \label{classdiffbifn_6d217a02d4fa13931258d4bebdd0feb4} |
---|
109 | |
---|
110 | |
---|
111 | Evaluates $A=\frac{d}{dx}f(x,u)|_{x0,u0}$ and writes result into {\tt A} . |
---|
112 | |
---|
113 | \begin{Desc} |
---|
114 | \item[Parameters:] |
---|
115 | \begin{description} |
---|
116 | \item[{\em full}]denotes that even unchanged entries are to be rewritten. When, false only the changed elements are computed. \item[{\em x0}]numeric value of $x$, \item[{\em u0}]numeric value of $u$ \item[{\em A}]a place where the result will be stored. \end{description} |
---|
117 | \end{Desc} |
---|
118 | |
---|
119 | |
---|
120 | Reimplemented in \hyperlink{classbilinfn_79c022de8dbe2b054bb9cc49345f3ef5}{bilinfn}, \hyperlink{classIMk1_463177c0fdffdf4951761959160cc682}{IMk1}, \hyperlink{classOMk1_3a6ff61c818d25f95912351aac201cc7}{OMk1}, \hyperlink{classIMpmsm_b4378b5d3bf64c683e4cf5c5f1cd56f1}{IMpmsm}, \hyperlink{classIMpmsm2o_0a3e125df1e53821e08accbd4960d713}{IMpmsm2o}, and \hyperlink{classOMpmsm_b75b5fd55b2ac5ed74b5b953af122821}{OMpmsm}. |
---|
121 | |
---|
122 | Referenced by EKF$<$ sq\_\-T $>$::bayes(), EKFCh::bayes(), EKFfull::bayes(), EKF$<$ sq\_\-T $>$::set\_\-parameters(), EKFCh::set\_\-parameters(), and EKFfull::set\_\-parameters().\hypertarget{classdiffbifn_1978bafd7909d15c139a08c495c24aa0}{ |
---|
123 | \index{diffbifn@{diffbifn}!dfdu\_\-cond@{dfdu\_\-cond}} |
---|
124 | \index{dfdu\_\-cond@{dfdu\_\-cond}!diffbifn@{diffbifn}} |
---|
125 | \subsubsection[dfdu\_\-cond]{\setlength{\rightskip}{0pt plus 5cm}virtual void diffbifn::dfdu\_\-cond (const vec \& {\em x0}, \/ const vec \& {\em u0}, \/ mat \& {\em A}, \/ bool {\em full} = {\tt true})\hspace{0.3cm}{\tt \mbox{[}inline, virtual\mbox{]}}}} |
---|
126 | \label{classdiffbifn_1978bafd7909d15c139a08c495c24aa0} |
---|
127 | |
---|
128 | |
---|
129 | Evaluates $A=\frac{d}{du}f(x,u)|_{x0,u0}$ and writes result into {\tt A} . |
---|
130 | |
---|
131 | \begin{Desc} |
---|
132 | \item[Parameters:] |
---|
133 | \begin{description} |
---|
134 | \item[{\em full}]denotes that even unchanged entries are to be rewritten. When, false only the changed elements are computed. \item[{\em x0}]numeric value of $x$, \item[{\em u0}]numeric value of $u$ \item[{\em A}]a place where the result will be stored. \end{description} |
---|
135 | \end{Desc} |
---|
136 | |
---|
137 | |
---|
138 | Reimplemented in \hyperlink{classbilinfn_90f2b15612b14883d6ed2b0e295cb82b}{bilinfn}, \hyperlink{classIMk1_2b85f0984da3fe55849bb7b28f66e50c}{IMk1}, \hyperlink{classIMpmsm_c3f8dad22ae9855c04a1d593b45c99b5}{IMpmsm}, and \hyperlink{classIMpmsm2o_27f9d89bce832056f747d985df77a726}{IMpmsm2o}. |
---|
139 | |
---|
140 | The documentation for this class was generated from the following file:\begin{CompactItemize} |
---|
141 | \item |
---|
142 | work/git/mixpp/bdm/stat/libFN.h\end{CompactItemize} |
---|