\section{IMpmsm Class Reference} \label{classIMpmsm}\index{IMpmsm@{IMpmsm}} State evolution model for a PMSM drive and its derivative with respect to \$x\$. {\tt \#include $<$pmsm.h$>$} Inheritance diagram for IMpmsm:\nopagebreak \begin{figure}[H] \begin{center} \leavevmode \includegraphics[width=62pt]{classIMpmsm__inherit__graph} \end{center} \end{figure} Collaboration diagram for IMpmsm:\nopagebreak \begin{figure}[H] \begin{center} \leavevmode \includegraphics[width=60pt]{classIMpmsm__coll__graph} \end{center} \end{figure} \subsection*{Public Member Functions} \begin{CompactItemize} \item void {\bf set\_\-parameters} (double Rs0, double Ls0, double dt0, double Ypm0, double kp0, double p0, double J0, double Mz0)\label{classIMpmsm_42818f3426d99fecb7e97be8ffe2e228} \begin{CompactList}\small\item\em Set mechanical and electrical variables. \item\end{CompactList}\item vec {\bf eval} (const vec \&x0, const vec \&u0)\label{classIMpmsm_45785869d978dda42828a072ec2caebe} \begin{CompactList}\small\item\em Evaluates \$f(x0,u0)\$. \item\end{CompactList}\item void {\bf dfdx\_\-cond} (const vec \&x0, const vec \&u0, mat \&A, bool full=true) \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 void {\bf dfdu\_\-cond} (const vec \&x0, const vec \&u0, mat \&A, bool full=true) \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 vec {\bf eval} (const vec \&cond)\label{classdiffbifn_ad7673e16aa1a046b131b24c731c4632} \begin{CompactList}\small\item\em Evaluates \$f(x0,u0)\$ (VS: Do we really need common eval? ). \item\end{CompactList}\item int {\bf \_\-dimx} () const \label{classdiffbifn_436de7a7301ea9eac7d6081b893bbf57} \begin{CompactList}\small\item\em access function \item\end{CompactList}\item int {\bf \_\-dimu} () const \label{classdiffbifn_fc8779acbff170611aff0ee70cee3879} \begin{CompactList}\small\item\em access function \item\end{CompactList}\item int {\bf \_\-dimy} () const \label{classfnc_a8891973d0ca48ce38e1886df45ca298} \begin{CompactList}\small\item\em access function \item\end{CompactList}\end{CompactItemize} \subsection*{Protected Attributes} \begin{CompactItemize} \item double \textbf{Rs}\label{classIMpmsm_5908138b6c11f32971542423978a25d3} \item double \textbf{Ls}\label{classIMpmsm_829e309d689b7e148d761d36b1b62fb7} \item double \textbf{dt}\label{classIMpmsm_ec462f3df7355cc72843c945d887b9d3} \item double \textbf{Ypm}\label{classIMpmsm_a1b973c18d381e7ec717165aa306b613} \item double \textbf{kp}\label{classIMpmsm_03f1857fb1910c7b06dac4ce50482516} \item double \textbf{p}\label{classIMpmsm_0eddf56a8feb6b837ee3c36c0ac6b781} \item double \textbf{J}\label{classIMpmsm_83e4149bb70b022f3a19208f14eac0e3} \item double \textbf{Mz}\label{classIMpmsm_0aa4f9ee2b9babdc05f62ba275a9575f} \item {\bf RV} {\bf rvx}\label{classdiffbifn_bcf96b86250c3cbd465ba5ee62474b75} \begin{CompactList}\small\item\em Indentifier of the first rv. \item\end{CompactList}\item {\bf RV} {\bf rvu}\label{classdiffbifn_c41c74c7942dba51ef0b0bfed963447d} \begin{CompactList}\small\item\em Indentifier of the second rv. \item\end{CompactList}\item int {\bf dimx}\label{classdiffbifn_f6918bc0a9dad656b4cddc028137eb78} \begin{CompactList}\small\item\em cache for rvx.count() \item\end{CompactList}\item int {\bf dimu}\label{classdiffbifn_2e07ce491e973f03d763e37624d0fe79} \begin{CompactList}\small\item\em cache for rvu.count() \item\end{CompactList}\item int {\bf dimy}\label{classfnc_22d51d10a7901331167f64f80d1af8e9} \begin{CompactList}\small\item\em Length of the output vector. \item\end{CompactList}\end{CompactItemize} \subsection{Detailed Description} State evolution model for a PMSM drive and its derivative with respect to \$x\$. \subsection{Member Function Documentation} \index{IMpmsm@{IMpmsm}!dfdx_cond@{dfdx\_\-cond}} \index{dfdx_cond@{dfdx\_\-cond}!IMpmsm@{IMpmsm}} \subsubsection{\setlength{\rightskip}{0pt plus 5cm}void IMpmsm::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{classIMpmsm_b4378b5d3bf64c683e4cf5c5f1cd56f1} Evaluates $A=\frac{d}{dx}f(x,u)|_{x0,u0}$ and writes result into {\tt A} . \begin{Desc} \item[Parameters:] \begin{description} \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} \end{Desc} Reimplemented from {\bf diffbifn} \doxyref{}{p.}{classdiffbifn_6d217a02d4fa13931258d4bebdd0feb4}.\index{IMpmsm@{IMpmsm}!dfdu_cond@{dfdu\_\-cond}} \index{dfdu_cond@{dfdu\_\-cond}!IMpmsm@{IMpmsm}} \subsubsection{\setlength{\rightskip}{0pt plus 5cm}void IMpmsm::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{classIMpmsm_c3f8dad22ae9855c04a1d593b45c99b5} Evaluates $A=\frac{d}{du}f(x,u)|_{x0,u0}$ and writes result into {\tt A} . \begin{Desc} \item[Parameters:] \begin{description} \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} \end{Desc} Reimplemented from {\bf diffbifn} \doxyref{}{p.}{classdiffbifn_1978bafd7909d15c139a08c495c24aa0}. The documentation for this class was generated from the following file:\begin{CompactItemize} \item work/mixpp/pmsm/pmsm.h\end{CompactItemize}