root/doc/html/classIMpmsm.html @ 99

Revision 99, 16.8 kB (checked in by smidl, 16 years ago)

doc

Line 
1<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
2<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
3<title>mixpp: IMpmsm Class Reference</title>
4<link href="doxygen.css" rel="stylesheet" type="text/css">
5<link href="tabs.css" rel="stylesheet" type="text/css">
6</head><body>
7<!-- Generated by Doxygen 1.5.5 -->
8<div class="navigation" id="top">
9  <div class="tabs">
10    <ul>
11      <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
12      <li><a href="pages.html"><span>Related&nbsp;Pages</span></a></li>
13      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
14      <li><a href="files.html"><span>Files</span></a></li>
15    </ul>
16  </div>
17  <div class="tabs">
18    <ul>
19      <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
20      <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
21      <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
22    </ul>
23  </div>
24</div>
25<div class="contents">
26<h1>IMpmsm Class Reference</h1><!-- doxytag: class="IMpmsm" --><!-- doxytag: inherits="diffbifn" -->State evolution model for a PMSM drive and its derivative with respect to $x$. 
27<a href="#_details">More...</a>
28<p>
29<code>#include &lt;<a class="el" href="pmsm_8h-source.html">pmsm.h</a>&gt;</code>
30<p>
31<div class="dynheader">
32Inheritance diagram for IMpmsm:</div>
33<div class="dynsection">
34<p><center><img src="classIMpmsm__inherit__graph.png" border="0" usemap="#IMpmsm__inherit__map" alt="Inheritance graph"></center>
35<map name="IMpmsm__inherit__map">
36<area shape="rect" href="classdiffbifn.html" title="Class representing a differentiable function of two variables ." alt="" coords="24,81,83,105"><area shape="rect" href="classfnc.html" title="Class representing function  of variable  represented by rv." alt="" coords="33,6,73,30"></map>
37<center><font size="2">[<a href="graph_legend.html">legend</a>]</font></center></div>
38<div class="dynheader">
39Collaboration diagram for IMpmsm:</div>
40<div class="dynsection">
41<p><center><img src="classIMpmsm__coll__graph.png" border="0" usemap="#IMpmsm__coll__map" alt="Collaboration graph"></center>
42<map name="IMpmsm__coll__map">
43<area shape="rect" href="classdiffbifn.html" title="Class representing a differentiable function of two variables ." alt="" coords="27,111,85,135"><area shape="rect" href="classfnc.html" title="Class representing function  of variable  represented by rv." alt="" coords="5,7,45,31"><area shape="rect" href="classRV.html" title="Class representing variables, most often random variables." alt="" coords="69,7,107,31"></map>
44<center><font size="2">[<a href="graph_legend.html">legend</a>]</font></center></div>
45
46<p>
47<a href="classIMpmsm-members.html">List of all members.</a><table border="0" cellpadding="0" cellspacing="0">
48<tr><td></td></tr>
49<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
50<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="42818f3426d99fecb7e97be8ffe2e228"></a><!-- doxytag: member="IMpmsm::set_parameters" ref="42818f3426d99fecb7e97be8ffe2e228" args="(double Rs0, double Ls0, double dt0, double Ypm0, double kp0, double p0, double J0, double Mz0)" -->
51void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIMpmsm.html#42818f3426d99fecb7e97be8ffe2e228">set_parameters</a> (double Rs0, double Ls0, double dt0, double Ypm0, double kp0, double p0, double J0, double Mz0)</td></tr>
52
53<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set mechanical and electrical variables. <br></td></tr>
54<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="45785869d978dda42828a072ec2caebe"></a><!-- doxytag: member="IMpmsm::eval" ref="45785869d978dda42828a072ec2caebe" args="(const vec &amp;x0, const vec &amp;u0)" -->
55vec&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIMpmsm.html#45785869d978dda42828a072ec2caebe">eval</a> (const vec &amp;x0, const vec &amp;u0)</td></tr>
56
57<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Evaluates <img class="formulaInl" alt="$f(x0,u0)$" src="form_49.png">. <br></td></tr>
58<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIMpmsm.html#b4378b5d3bf64c683e4cf5c5f1cd56f1">dfdx_cond</a> (const vec &amp;x0, const vec &amp;u0, mat &amp;A, bool full=true)</td></tr>
59
60<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Evaluates <img class="formulaInl" alt="$A=\frac{d}{dx}f(x,u)|_{x0,u0}$" src="form_1.png"> and writes result into <code>A</code> .  <a href="#b4378b5d3bf64c683e4cf5c5f1cd56f1"></a><br></td></tr>
61<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIMpmsm.html#c3f8dad22ae9855c04a1d593b45c99b5">dfdu_cond</a> (const vec &amp;x0, const vec &amp;u0, mat &amp;A, bool full=true)</td></tr>
62
63<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Evaluates <img class="formulaInl" alt="$A=\frac{d}{du}f(x,u)|_{x0,u0}$" src="form_2.png"> and writes result into <code>A</code> .  <a href="#c3f8dad22ae9855c04a1d593b45c99b5"></a><br></td></tr>
64<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ad7673e16aa1a046b131b24c731c4632"></a><!-- doxytag: member="IMpmsm::eval" ref="ad7673e16aa1a046b131b24c731c4632" args="(const vec &amp;cond)" -->
65vec&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classdiffbifn.html#ad7673e16aa1a046b131b24c731c4632">eval</a> (const vec &amp;cond)</td></tr>
66
67<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Evaluates <img class="formulaInl" alt="$f(x0,u0)$" src="form_49.png"> (VS: Do we really need common eval? ). <br></td></tr>
68<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="436de7a7301ea9eac7d6081b893bbf57"></a><!-- doxytag: member="IMpmsm::_dimx" ref="436de7a7301ea9eac7d6081b893bbf57" args="() const " -->
69int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classdiffbifn.html#436de7a7301ea9eac7d6081b893bbf57">_dimx</a> () const </td></tr>
70
71<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">access function <br></td></tr>
72<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="fc8779acbff170611aff0ee70cee3879"></a><!-- doxytag: member="IMpmsm::_dimu" ref="fc8779acbff170611aff0ee70cee3879" args="() const " -->
73int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classdiffbifn.html#fc8779acbff170611aff0ee70cee3879">_dimu</a> () const </td></tr>
74
75<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">access function <br></td></tr>
76<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a8891973d0ca48ce38e1886df45ca298"></a><!-- doxytag: member="IMpmsm::_dimy" ref="a8891973d0ca48ce38e1886df45ca298" args="() const " -->
77int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classfnc.html#a8891973d0ca48ce38e1886df45ca298">_dimy</a> () const </td></tr>
78
79<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">access function <br></td></tr>
80<tr><td colspan="2"><br><h2>Protected Attributes</h2></td></tr>
81<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="5908138b6c11f32971542423978a25d3"></a><!-- doxytag: member="IMpmsm::Rs" ref="5908138b6c11f32971542423978a25d3" args="" -->
82double&nbsp;</td><td class="memItemRight" valign="bottom"><b>Rs</b></td></tr>
83
84<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="829e309d689b7e148d761d36b1b62fb7"></a><!-- doxytag: member="IMpmsm::Ls" ref="829e309d689b7e148d761d36b1b62fb7" args="" -->
85double&nbsp;</td><td class="memItemRight" valign="bottom"><b>Ls</b></td></tr>
86
87<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ec462f3df7355cc72843c945d887b9d3"></a><!-- doxytag: member="IMpmsm::dt" ref="ec462f3df7355cc72843c945d887b9d3" args="" -->
88double&nbsp;</td><td class="memItemRight" valign="bottom"><b>dt</b></td></tr>
89
90<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a1b973c18d381e7ec717165aa306b613"></a><!-- doxytag: member="IMpmsm::Ypm" ref="a1b973c18d381e7ec717165aa306b613" args="" -->
91double&nbsp;</td><td class="memItemRight" valign="bottom"><b>Ypm</b></td></tr>
92
93<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="03f1857fb1910c7b06dac4ce50482516"></a><!-- doxytag: member="IMpmsm::kp" ref="03f1857fb1910c7b06dac4ce50482516" args="" -->
94double&nbsp;</td><td class="memItemRight" valign="bottom"><b>kp</b></td></tr>
95
96<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="0eddf56a8feb6b837ee3c36c0ac6b781"></a><!-- doxytag: member="IMpmsm::p" ref="0eddf56a8feb6b837ee3c36c0ac6b781" args="" -->
97double&nbsp;</td><td class="memItemRight" valign="bottom"><b>p</b></td></tr>
98
99<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="83e4149bb70b022f3a19208f14eac0e3"></a><!-- doxytag: member="IMpmsm::J" ref="83e4149bb70b022f3a19208f14eac0e3" args="" -->
100double&nbsp;</td><td class="memItemRight" valign="bottom"><b>J</b></td></tr>
101
102<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="0aa4f9ee2b9babdc05f62ba275a9575f"></a><!-- doxytag: member="IMpmsm::Mz" ref="0aa4f9ee2b9babdc05f62ba275a9575f" args="" -->
103double&nbsp;</td><td class="memItemRight" valign="bottom"><b>Mz</b></td></tr>
104
105<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="bcf96b86250c3cbd465ba5ee62474b75"></a><!-- doxytag: member="IMpmsm::rvx" ref="bcf96b86250c3cbd465ba5ee62474b75" args="" -->
106<a class="el" href="classRV.html">RV</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classdiffbifn.html#bcf96b86250c3cbd465ba5ee62474b75">rvx</a></td></tr>
107
108<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Indentifier of the first rv. <br></td></tr>
109<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="c41c74c7942dba51ef0b0bfed963447d"></a><!-- doxytag: member="IMpmsm::rvu" ref="c41c74c7942dba51ef0b0bfed963447d" args="" -->
110<a class="el" href="classRV.html">RV</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classdiffbifn.html#c41c74c7942dba51ef0b0bfed963447d">rvu</a></td></tr>
111
112<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Indentifier of the second rv. <br></td></tr>
113<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="f6918bc0a9dad656b4cddc028137eb78"></a><!-- doxytag: member="IMpmsm::dimx" ref="f6918bc0a9dad656b4cddc028137eb78" args="" -->
114int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classdiffbifn.html#f6918bc0a9dad656b4cddc028137eb78">dimx</a></td></tr>
115
116<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">cache for rvx.count() <br></td></tr>
117<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="2e07ce491e973f03d763e37624d0fe79"></a><!-- doxytag: member="IMpmsm::dimu" ref="2e07ce491e973f03d763e37624d0fe79" args="" -->
118int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classdiffbifn.html#2e07ce491e973f03d763e37624d0fe79">dimu</a></td></tr>
119
120<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">cache for rvu.count() <br></td></tr>
121<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="22d51d10a7901331167f64f80d1af8e9"></a><!-- doxytag: member="IMpmsm::dimy" ref="22d51d10a7901331167f64f80d1af8e9" args="" -->
122int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classfnc.html#22d51d10a7901331167f64f80d1af8e9">dimy</a></td></tr>
123
124<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Length of the output vector. <br></td></tr>
125</table>
126<hr><a name="_details"></a><h2>Detailed Description</h2>
127State evolution model for a PMSM drive and its derivative with respect to $x$. <hr><h2>Member Function Documentation</h2>
128<a class="anchor" name="b4378b5d3bf64c683e4cf5c5f1cd56f1"></a><!-- doxytag: member="IMpmsm::dfdx_cond" ref="b4378b5d3bf64c683e4cf5c5f1cd56f1" args="(const vec &amp;x0, const vec &amp;u0, mat &amp;A, bool full=true)" -->
129<div class="memitem">
130<div class="memproto">
131      <table class="memname">
132        <tr>
133          <td class="memname">void IMpmsm::dfdx_cond           </td>
134          <td>(</td>
135          <td class="paramtype">const vec &amp;&nbsp;</td>
136          <td class="paramname"> <em>x0</em>, </td>
137        </tr>
138        <tr>
139          <td class="paramkey"></td>
140          <td></td>
141          <td class="paramtype">const vec &amp;&nbsp;</td>
142          <td class="paramname"> <em>u0</em>, </td>
143        </tr>
144        <tr>
145          <td class="paramkey"></td>
146          <td></td>
147          <td class="paramtype">mat &amp;&nbsp;</td>
148          <td class="paramname"> <em>A</em>, </td>
149        </tr>
150        <tr>
151          <td class="paramkey"></td>
152          <td></td>
153          <td class="paramtype">bool&nbsp;</td>
154          <td class="paramname"> <em>full</em> = <code>true</code></td><td>&nbsp;</td>
155        </tr>
156        <tr>
157          <td></td>
158          <td>)</td>
159          <td></td><td></td><td width="100%"><code> [inline, virtual]</code></td>
160        </tr>
161      </table>
162</div>
163<div class="memdoc">
164
165<p>
166Evaluates <img class="formulaInl" alt="$A=\frac{d}{dx}f(x,u)|_{x0,u0}$" src="form_1.png"> and writes result into <code>A</code> .
167<p>
168<dl compact><dt><b>Parameters:</b></dt><dd>
169  <table border="0" cellspacing="2" cellpadding="0">
170    <tr><td valign="top"></td><td valign="top"><em>full</em>&nbsp;</td><td>denotes that even unchanged entries are to be rewritten. When, false only the changed elements are computed. </td></tr>
171    <tr><td valign="top"></td><td valign="top"><em>x0</em>&nbsp;</td><td>numeric value of <img class="formulaInl" alt="$x$" src="form_28.png">, </td></tr>
172    <tr><td valign="top"></td><td valign="top"><em>u0</em>&nbsp;</td><td>numeric value of <img class="formulaInl" alt="$u$" src="form_50.png"> </td></tr>
173    <tr><td valign="top"></td><td valign="top"><em>A</em>&nbsp;</td><td>a place where the result will be stored. </td></tr>
174  </table>
175</dl>
176
177<p>Reimplemented from <a class="el" href="classdiffbifn.html#6d217a02d4fa13931258d4bebdd0feb4">diffbifn</a>.</p>
178
179</div>
180</div><p>
181<a class="anchor" name="c3f8dad22ae9855c04a1d593b45c99b5"></a><!-- doxytag: member="IMpmsm::dfdu_cond" ref="c3f8dad22ae9855c04a1d593b45c99b5" args="(const vec &amp;x0, const vec &amp;u0, mat &amp;A, bool full=true)" -->
182<div class="memitem">
183<div class="memproto">
184      <table class="memname">
185        <tr>
186          <td class="memname">void IMpmsm::dfdu_cond           </td>
187          <td>(</td>
188          <td class="paramtype">const vec &amp;&nbsp;</td>
189          <td class="paramname"> <em>x0</em>, </td>
190        </tr>
191        <tr>
192          <td class="paramkey"></td>
193          <td></td>
194          <td class="paramtype">const vec &amp;&nbsp;</td>
195          <td class="paramname"> <em>u0</em>, </td>
196        </tr>
197        <tr>
198          <td class="paramkey"></td>
199          <td></td>
200          <td class="paramtype">mat &amp;&nbsp;</td>
201          <td class="paramname"> <em>A</em>, </td>
202        </tr>
203        <tr>
204          <td class="paramkey"></td>
205          <td></td>
206          <td class="paramtype">bool&nbsp;</td>
207          <td class="paramname"> <em>full</em> = <code>true</code></td><td>&nbsp;</td>
208        </tr>
209        <tr>
210          <td></td>
211          <td>)</td>
212          <td></td><td></td><td width="100%"><code> [inline, virtual]</code></td>
213        </tr>
214      </table>
215</div>
216<div class="memdoc">
217
218<p>
219Evaluates <img class="formulaInl" alt="$A=\frac{d}{du}f(x,u)|_{x0,u0}$" src="form_2.png"> and writes result into <code>A</code> .
220<p>
221<dl compact><dt><b>Parameters:</b></dt><dd>
222  <table border="0" cellspacing="2" cellpadding="0">
223    <tr><td valign="top"></td><td valign="top"><em>full</em>&nbsp;</td><td>denotes that even unchanged entries are to be rewritten. When, false only the changed elements are computed. </td></tr>
224    <tr><td valign="top"></td><td valign="top"><em>x0</em>&nbsp;</td><td>numeric value of <img class="formulaInl" alt="$x$" src="form_28.png">, </td></tr>
225    <tr><td valign="top"></td><td valign="top"><em>u0</em>&nbsp;</td><td>numeric value of <img class="formulaInl" alt="$u$" src="form_50.png"> </td></tr>
226    <tr><td valign="top"></td><td valign="top"><em>A</em>&nbsp;</td><td>a place where the result will be stored. </td></tr>
227  </table>
228</dl>
229
230<p>Reimplemented from <a class="el" href="classdiffbifn.html#1978bafd7909d15c139a08c495c24aa0">diffbifn</a>.</p>
231
232</div>
233</div><p>
234<hr>The documentation for this class was generated from the following file:<ul>
235<li>work/mixpp/pmsm/<a class="el" href="pmsm_8h-source.html">pmsm.h</a></ul>
236</div>
237<hr size="1"><address style="text-align: right;"><small>Generated on Fri May 9 16:15:26 2008 for mixpp by&nbsp;
238<a href="http://www.doxygen.org/index.html">
239<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.5 </small></address>
240</body>
241</html>
Note: See TracBrowser for help on using the browser.