[30] | 1 | \section{diffbifn Class Reference} |
---|
| 2 | \label{classdiffbifn}\index{diffbifn@{diffbifn}} |
---|
[91] | 3 | Class representing a differentiable function of two variables $f(x,u)$. |
---|
[30] | 4 | |
---|
| 5 | |
---|
| 6 | {\tt \#include $<$libFN.h$>$} |
---|
| 7 | |
---|
| 8 | Inheritance diagram for diffbifn:\nopagebreak |
---|
| 9 | \begin{figure}[H] |
---|
| 10 | \begin{center} |
---|
| 11 | \leavevmode |
---|
[91] | 12 | \includegraphics[width=117pt]{classdiffbifn__inherit__graph} |
---|
[30] | 13 | \end{center} |
---|
| 14 | \end{figure} |
---|
| 15 | Collaboration diagram for diffbifn:\nopagebreak |
---|
| 16 | \begin{figure}[H] |
---|
| 17 | \begin{center} |
---|
| 18 | \leavevmode |
---|
| 19 | \includegraphics[width=60pt]{classdiffbifn__coll__graph} |
---|
| 20 | \end{center} |
---|
| 21 | \end{figure} |
---|
| 22 | \subsection*{Public Member Functions} |
---|
| 23 | \begin{CompactItemize} |
---|
| 24 | \item |
---|
| 25 | vec {\bf eval} (const vec \&cond)\label{classdiffbifn_ad7673e16aa1a046b131b24c731c4632} |
---|
| 26 | |
---|
[91] | 27 | \begin{CompactList}\small\item\em Evaluates $f(x0,u0)$ (VS: Do we really need common eval? ). \item\end{CompactList}\item |
---|
[30] | 28 | virtual vec {\bf eval} (const vec \&x0, const vec \&u0)\label{classdiffbifn_40d8a7eee45acc55cda33d43282faa03} |
---|
| 29 | |
---|
[91] | 30 | \begin{CompactList}\small\item\em Evaluates $f(x0,u0)$. \item\end{CompactList}\item |
---|
[30] | 31 | virtual void {\bf dfdx\_\-cond} (const vec \&x0, const vec \&u0, mat \&A, bool full=true) |
---|
| 32 | \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 |
---|
| 33 | virtual void {\bf dfdu\_\-cond} (const vec \&x0, const vec \&u0, mat \&A, bool full=true) |
---|
| 34 | \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 |
---|
[79] | 35 | {\bf diffbifn} (int {\bf dimy}, const {\bf RV} rvx0, const {\bf RV} rvu0)\label{classdiffbifn_797772c0d5aab8ddccec19dfe4bb2d77} |
---|
[30] | 36 | |
---|
| 37 | \begin{CompactList}\small\item\em Default constructor (dimy is not set!). \item\end{CompactList}\item |
---|
| 38 | int {\bf \_\-dimx} () const \label{classdiffbifn_436de7a7301ea9eac7d6081b893bbf57} |
---|
| 39 | |
---|
| 40 | \begin{CompactList}\small\item\em access function \item\end{CompactList}\item |
---|
| 41 | int {\bf \_\-dimu} () const \label{classdiffbifn_fc8779acbff170611aff0ee70cee3879} |
---|
| 42 | |
---|
| 43 | \begin{CompactList}\small\item\em access function \item\end{CompactList}\item |
---|
| 44 | int {\bf \_\-dimy} () const \label{classfnc_a8891973d0ca48ce38e1886df45ca298} |
---|
| 45 | |
---|
| 46 | \begin{CompactList}\small\item\em access function \item\end{CompactList}\end{CompactItemize} |
---|
| 47 | \subsection*{Protected Attributes} |
---|
| 48 | \begin{CompactItemize} |
---|
| 49 | \item |
---|
[33] | 50 | {\bf RV} {\bf rvx}\label{classdiffbifn_bcf96b86250c3cbd465ba5ee62474b75} |
---|
[30] | 51 | |
---|
[33] | 52 | \begin{CompactList}\small\item\em Indentifier of the first rv. \item\end{CompactList}\item |
---|
| 53 | {\bf RV} {\bf rvu}\label{classdiffbifn_c41c74c7942dba51ef0b0bfed963447d} |
---|
[30] | 54 | |
---|
[33] | 55 | \begin{CompactList}\small\item\em Indentifier of the second rv. \item\end{CompactList}\item |
---|
| 56 | int {\bf dimx}\label{classdiffbifn_f6918bc0a9dad656b4cddc028137eb78} |
---|
[30] | 57 | |
---|
[33] | 58 | \begin{CompactList}\small\item\em cache for rvx.count() \item\end{CompactList}\item |
---|
| 59 | int {\bf dimu}\label{classdiffbifn_2e07ce491e973f03d763e37624d0fe79} |
---|
[30] | 60 | |
---|
[33] | 61 | \begin{CompactList}\small\item\em cache for rvu.count() \item\end{CompactList}\item |
---|
| 62 | int {\bf dimy}\label{classfnc_22d51d10a7901331167f64f80d1af8e9} |
---|
[30] | 63 | |
---|
[33] | 64 | \begin{CompactList}\small\item\em Length of the output vector. \item\end{CompactList}\end{CompactItemize} |
---|
[30] | 65 | |
---|
| 66 | |
---|
| 67 | \subsection{Detailed Description} |
---|
[91] | 68 | Class representing a differentiable function of two variables $f(x,u)$. |
---|
[30] | 69 | |
---|
| 70 | Function of two variables. |
---|
| 71 | |
---|
| 72 | TODO: 1) Technically, it could have a common parent (e.g. {\tt \doxyref{fnc}{p.}{classfnc}} ) 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 \doxyref{fnc}{p.}{classfnc}} ). |
---|
| 73 | |
---|
| 74 | \subsection{Member Function Documentation} |
---|
[91] | 75 | \index{diffbifn@{diffbifn}!dfdx\_\-cond@{dfdx\_\-cond}} |
---|
| 76 | \index{dfdx\_\-cond@{dfdx\_\-cond}!diffbifn@{diffbifn}} |
---|
[140] | 77 | \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 [inline, virtual]}}\label{classdiffbifn_6d217a02d4fa13931258d4bebdd0feb4} |
---|
[30] | 78 | |
---|
| 79 | |
---|
| 80 | Evaluates $A=\frac{d}{dx}f(x,u)|_{x0,u0}$ and writes result into {\tt A} . |
---|
| 81 | |
---|
| 82 | \begin{Desc} |
---|
| 83 | \item[Parameters:] |
---|
| 84 | \begin{description} |
---|
[91] | 85 | \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} |
---|
[30] | 86 | \end{Desc} |
---|
| 87 | |
---|
| 88 | |
---|
[91] | 89 | Reimplemented in {\bf bilinfn} \doxyref{}{p.}{classbilinfn_79c022de8dbe2b054bb9cc49345f3ef5}, {\bf IMpmsm} \doxyref{}{p.}{classIMpmsm_b4378b5d3bf64c683e4cf5c5f1cd56f1}, and {\bf OMpmsm} \doxyref{}{p.}{classOMpmsm_b75b5fd55b2ac5ed74b5b953af122821}. |
---|
[30] | 90 | |
---|
[91] | 91 | Referenced by EKF$<$ sq\_\-T $>$::bayes(), EKFCh::bayes(), EKFfull::bayes(), EKF$<$ sq\_\-T $>$::set\_\-parameters(), EKFCh::set\_\-parameters(), and EKFfull::set\_\-parameters().\index{diffbifn@{diffbifn}!dfdu\_\-cond@{dfdu\_\-cond}} |
---|
| 92 | \index{dfdu\_\-cond@{dfdu\_\-cond}!diffbifn@{diffbifn}} |
---|
[140] | 93 | \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 [inline, virtual]}}\label{classdiffbifn_1978bafd7909d15c139a08c495c24aa0} |
---|
[30] | 94 | |
---|
[91] | 95 | |
---|
[30] | 96 | Evaluates $A=\frac{d}{du}f(x,u)|_{x0,u0}$ and writes result into {\tt A} . |
---|
| 97 | |
---|
| 98 | \begin{Desc} |
---|
| 99 | \item[Parameters:] |
---|
| 100 | \begin{description} |
---|
[91] | 101 | \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} |
---|
[30] | 102 | \end{Desc} |
---|
| 103 | |
---|
| 104 | |
---|
[33] | 105 | Reimplemented in {\bf bilinfn} \doxyref{}{p.}{classbilinfn_90f2b15612b14883d6ed2b0e295cb82b}, and {\bf IMpmsm} \doxyref{}{p.}{classIMpmsm_c3f8dad22ae9855c04a1d593b45c99b5}. |
---|
[30] | 106 | |
---|
| 107 | The documentation for this class was generated from the following file:\begin{CompactItemize} |
---|
| 108 | \item |
---|
| 109 | work/mixpp/bdm/stat/libFN.h\end{CompactItemize} |
---|