Show
Ignore:
Timestamp:
08/29/09 20:54:10 (15 years ago)
Author:
smidl
Message:

doc

Files:
1 modified

Legend:

Unmodified
Added
Removed
  • library/doc/html/classbdm_1_1LQG.html

    r538 r590  
    7575<tr><td></td></tr> 
    7676<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr> 
    77 <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="50b5aee93427077a97d6640cc90e50e3"></a><!-- doxytag: member="bdm::LQG::set_system_parameters" ref="50b5aee93427077a97d6640cc90e50e3" args="(const mat &amp;A, const mat &amp;B, const mat &amp;C)" --> 
    78 void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1LQG.html#50b5aee93427077a97d6640cc90e50e3">set_system_parameters</a> (const mat &amp;<a class="el" href="classbdm_1_1LQG.html#ffc0d99976377c584afd5717440a7e61">A</a>, const mat &amp;<a class="el" href="classbdm_1_1LQG.html#3093b0597585914ed7ed8c7bc3f2073f">B</a>, const mat &amp;<a class="el" href="classbdm_1_1LQG.html#fc2b09d6ff3fd8a7dd6ed8ecf2fb3376">C</a>)</td></tr> 
     77<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="d70ccc26e555b7f96c778a08b0d2153e"></a><!-- doxytag: member="bdm::LQG::set_system" ref="d70ccc26e555b7f96c778a08b0d2153e" args="(shared_ptr&lt; StateSpace&lt; fsqmat &gt; &gt; S0)" --> 
     78void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1LQG.html#d70ccc26e555b7f96c778a08b0d2153e">set_system</a> (<a class="el" href="classbdm_1_1shared__ptr.html">shared_ptr</a>&lt; <a class="el" href="classbdm_1_1StateSpace.html">StateSpace</a>&lt; <a class="el" href="classbdm_1_1fsqmat.html">fsqmat</a> &gt; &gt; S0)</td></tr> 
    7979 
    8080<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">set system parameters from given matrices <br></td></tr> 
    81 <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="13c39ce525ac7969777113abcad20729"></a><!-- doxytag: member="bdm::LQG::set_control_parameters" ref="13c39ce525ac7969777113abcad20729" args="(const mat &amp;Qy0, const mat &amp;Qu0, const vec y_req0, int horizon0)" --> 
    82 void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1LQG.html#13c39ce525ac7969777113abcad20729">set_control_parameters</a> (const mat &amp;Qy0, const mat &amp;Qu0, const vec y_req0, int horizon0)</td></tr> 
     81<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="be34f68bc868096df1473487b920bae3"></a><!-- doxytag: member="bdm::LQG::set_control_parameters" ref="be34f68bc868096df1473487b920bae3" args="(const mat &amp;Qy0, const mat &amp;Qu0, const vec &amp;y_req0, int horizon0)" --> 
     82void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1LQG.html#be34f68bc868096df1473487b920bae3">set_control_parameters</a> (const mat &amp;Qy0, const mat &amp;Qu0, const vec &amp;y_req0, int horizon0)</td></tr> 
    8383 
    8484<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">set penalization matrices and control horizon <br></td></tr> 
    85 <tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1LQG.html#3c85d71e15b469f608a8bee1f901264b">prepare_qr</a> ()</td></tr> 
    86  
    87 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">set system parameters from <a class="el" href="classbdm_1_1Kalman.html" title="Kalman filter with covariance matrices in square root form.">Kalman</a> filter  <a href="#3c85d71e15b469f608a8bee1f901264b"></a><br></td></tr> 
     85<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1LQG.html#ec1a44c57a4569335a943462b35c3156">initialize</a> ()</td></tr> 
     86 
     87<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">set system parameters from <a class="el" href="classbdm_1_1Kalman.html" title="Common abstract base for Kalman filters.">Kalman</a> filter  <a href="#ec1a44c57a4569335a943462b35c3156"></a><br></td></tr> 
     88<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="96c8fb67798ccd783467fcb607296954"></a><!-- doxytag: member="bdm::LQG::validate" ref="96c8fb67798ccd783467fcb607296954" args="()" --> 
     89void&nbsp;</td><td class="memItemRight" valign="bottom"><b>validate</b> ()</td></tr> 
     90 
    8891<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="5016aebbb654a0e3d653b8485e0ea86c"></a><!-- doxytag: member="bdm::LQG::update_state" ref="5016aebbb654a0e3d653b8485e0ea86c" args="()" --> 
    8992virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1LQG.html#5016aebbb654a0e3d653b8485e0ea86c">update_state</a> ()</td></tr> 
    9093 
    91 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">function for future use which is called at each time td; Should call <a class="el" href="classbdm_1_1LQG.html#3c85d71e15b469f608a8bee1f901264b" title="set system parameters from Kalman filter">prepare_qr()</a>! <br></td></tr> 
     94<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">function for future use which is called at each time td; Should call <a class="el" href="classbdm_1_1LQG.html#ec1a44c57a4569335a943462b35c3156" title="set system parameters from Kalman filter">initialize()</a>! <br></td></tr> 
    9295<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ddc5444b092fdb36239f83ab1ae85805"></a><!-- doxytag: member="bdm::LQG::ricatti_step" ref="ddc5444b092fdb36239f83ab1ae85805" args="()" --> 
    9396void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1LQG.html#ddc5444b092fdb36239f83ab1ae85805">ricatti_step</a> ()</td></tr> 
     
    105108 
    106109<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">apply control strategy to obtain control input <br></td></tr> 
    107 <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="af0e6941ba5919cae1bc530e2181b109"></a><!-- doxytag: member="bdm::LQG::to_string" ref="af0e6941ba5919cae1bc530e2181b109" args="()" --> 
    108 virtual string&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1root.html#af0e6941ba5919cae1bc530e2181b109">to_string</a> ()</td></tr> 
    109  
    110 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">This method returns a basic info about the current instance. <br></td></tr> 
    111 <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="0551e3121091c5199bf4413b50522176"></a><!-- doxytag: member="bdm::LQG::from_setting" ref="0551e3121091c5199bf4413b50522176" args="(const Setting &amp;set)" --> 
    112 virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1root.html#0551e3121091c5199bf4413b50522176">from_setting</a> (const Setting &amp;set)</td></tr> 
    113  
    114 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">This method arrange instance properties according the data stored in the Setting structure. <br></td></tr> 
    115 <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="67d954d255ede776eade7334d4895790"></a><!-- doxytag: member="bdm::LQG::to_setting" ref="67d954d255ede776eade7334d4895790" args="(Setting &amp;set) const " --> 
    116 virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1root.html#67d954d255ede776eade7334d4895790">to_setting</a> (Setting &amp;set) const </td></tr> 
    117  
    118 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">This method save all the instance properties into the Setting structure. <br></td></tr> 
    119 <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="1c314bd6d6dacb8ba78ea5eb88fd9516"></a><!-- doxytag: member="bdm::LQG::validate" ref="1c314bd6d6dacb8ba78ea5eb88fd9516" args="()" --> 
    120 virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1root.html#1c314bd6d6dacb8ba78ea5eb88fd9516">validate</a> ()</td></tr> 
    121  
    122 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">This method TODO. <br></td></tr> 
    123110<tr><td colspan="2"><br><h2>Protected Attributes</h2></td></tr> 
    124 <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ce3c087c11fa4d50f63d2027be572394"></a><!-- doxytag: member="bdm::LQG::dimx" ref="ce3c087c11fa4d50f63d2027be572394" args="" --> 
    125 int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1LQG.html#ce3c087c11fa4d50f63d2027be572394">dimx</a></td></tr> 
    126  
    127 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">dimension of state <br></td></tr> 
    128 <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ff701d81aa4f32e0a07a5910f06c8969"></a><!-- doxytag: member="bdm::LQG::dimu" ref="ff701d81aa4f32e0a07a5910f06c8969" args="" --> 
    129 int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1LQG.html#ff701d81aa4f32e0a07a5910f06c8969">dimu</a></td></tr> 
    130  
    131 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">dimension of inputs <br></td></tr> 
    132 <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="753e909ac3694cde54b4fc718e24fa09"></a><!-- doxytag: member="bdm::LQG::dimy" ref="753e909ac3694cde54b4fc718e24fa09" args="" --> 
    133 int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1LQG.html#753e909ac3694cde54b4fc718e24fa09">dimy</a></td></tr> 
    134  
    135 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">dimension of output <br></td></tr> 
    136 <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ffc0d99976377c584afd5717440a7e61"></a><!-- doxytag: member="bdm::LQG::A" ref="ffc0d99976377c584afd5717440a7e61" args="" --> 
    137 mat&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1LQG.html#ffc0d99976377c584afd5717440a7e61">A</a></td></tr> 
    138  
    139 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">matrix A of the linear system <br></td></tr> 
    140 <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="3093b0597585914ed7ed8c7bc3f2073f"></a><!-- doxytag: member="bdm::LQG::B" ref="3093b0597585914ed7ed8c7bc3f2073f" args="" --> 
    141 mat&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1LQG.html#3093b0597585914ed7ed8c7bc3f2073f">B</a></td></tr> 
    142  
    143 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">matrix B of the linear system <br></td></tr> 
    144 <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="fc2b09d6ff3fd8a7dd6ed8ecf2fb3376"></a><!-- doxytag: member="bdm::LQG::C" ref="fc2b09d6ff3fd8a7dd6ed8ecf2fb3376" args="" --> 
    145 mat&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1LQG.html#fc2b09d6ff3fd8a7dd6ed8ecf2fb3376">C</a></td></tr> 
    146  
    147 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">matrix C of the linear system <br></td></tr> 
     111<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="9575232a3b04933e6b4c4299bf1bfe15"></a><!-- doxytag: member="bdm::LQG::S" ref="9575232a3b04933e6b4c4299bf1bfe15" args="" --> 
     112<a class="el" href="classbdm_1_1shared__ptr.html">shared_ptr</a>&lt; <a class="el" href="classbdm_1_1StateSpace.html">StateSpace</a>&lt; <a class="el" href="classbdm_1_1fsqmat.html">fsqmat</a> &gt; &gt;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1LQG.html#9575232a3b04933e6b4c4299bf1bfe15">S</a></td></tr> 
     113 
     114<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight"><a class="el" href="classbdm_1_1StateSpace.html" title="Basic elements of linear state-space model.">StateSpace</a> model from which we read data. <br></td></tr> 
    148115<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ad002e3dc31c59db7f286b00a8e2fc65"></a><!-- doxytag: member="bdm::LQG::y_req" ref="ad002e3dc31c59db7f286b00a8e2fc65" args="" --> 
    149116vec&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1LQG.html#ad002e3dc31c59db7f286b00a8e2fc65">y_req</a></td></tr> 
     117 
     118<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">required value of the output y at time t (assumed constant) <br></td></tr> 
     119<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="8dc7e6ca7949ded1d94ccd78cb8bb2da"></a><!-- doxytag: member="bdm::LQG::u_req" ref="8dc7e6ca7949ded1d94ccd78cb8bb2da" args="" --> 
     120vec&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1LQG.html#8dc7e6ca7949ded1d94ccd78cb8bb2da">u_req</a></td></tr> 
    150121 
    151122<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">required value of the output y at time t (assumed constant) <br></td></tr> 
     
    170141 
    171142<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">controller parameters <br></td></tr> 
    172 <tr><td colspan="2"><div class="groupHeader">temporary storage for ricatti</div></td></tr> 
    173 <tr><td colspan="2"><div class="groupText">parameters <br><br></div></td></tr> 
     143<tr><td colspan="2"><div class="groupHeader">temporary storage for ricatti - use initialize</div></td></tr> 
     144<tr><td colspan="2"><div class="groupText">convenience parameters <br><br></div></td></tr> 
     145<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ce3c087c11fa4d50f63d2027be572394"></a><!-- doxytag: member="bdm::LQG::dimx" ref="ce3c087c11fa4d50f63d2027be572394" args="" --> 
     146int&nbsp;</td><td class="memItemRight" valign="bottom"><b>dimx</b></td></tr> 
     147 
     148<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="753e909ac3694cde54b4fc718e24fa09"></a><!-- doxytag: member="bdm::LQG::dimy" ref="753e909ac3694cde54b4fc718e24fa09" args="" --> 
     149int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1LQG.html#753e909ac3694cde54b4fc718e24fa09">dimy</a></td></tr> 
     150 
     151<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">convenience parameters <br></td></tr> 
     152<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ff701d81aa4f32e0a07a5910f06c8969"></a><!-- doxytag: member="bdm::LQG::dimu" ref="ff701d81aa4f32e0a07a5910f06c8969" args="" --> 
     153int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1LQG.html#ff701d81aa4f32e0a07a5910f06c8969">dimu</a></td></tr> 
     154 
     155<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">convenience parameters <br></td></tr> 
    174156<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="3f7d31ad976ed1debeeda12949048909"></a><!-- doxytag: member="bdm::LQG::pr" ref="3f7d31ad976ed1debeeda12949048909" args="" --> 
    175 mat&nbsp;</td><td class="memItemRight" valign="bottom"><b>pr</b></td></tr> 
    176  
     157mat&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1LQG.html#3f7d31ad976ed1debeeda12949048909">pr</a></td></tr> 
     158 
     159<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">parameters <br></td></tr> 
    177160<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="98203a62e12acc13ced7ef22e4ac4255"></a><!-- doxytag: member="bdm::LQG::qux" ref="98203a62e12acc13ced7ef22e4ac4255" args="" --> 
    178161mat&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1LQG.html#98203a62e12acc13ced7ef22e4ac4255">qux</a></td></tr> 
     
    205188</table> 
    206189<hr><a name="_details"></a><h2>Detailed Description</h2> 
    207 Linear Quadratic Gaussian designer for constant penalizations and constant target Its internals are very close to <a class="el" href="classbdm_1_1Kalman.html" title="Kalman filter with covariance matrices in square root form.">Kalman</a> estimator <hr><h2>Member Function Documentation</h2> 
    208 <a class="anchor" name="3c85d71e15b469f608a8bee1f901264b"></a><!-- doxytag: member="bdm::LQG::prepare_qr" ref="3c85d71e15b469f608a8bee1f901264b" args="()" --> 
     190Linear Quadratic Gaussian designer for constant penalizations and constant target Its internals are very close to <a class="el" href="classbdm_1_1Kalman.html" title="Common abstract base for Kalman filters.">Kalman</a> estimator <hr><h2>Member Function Documentation</h2> 
     191<a class="anchor" name="ec1a44c57a4569335a943462b35c3156"></a><!-- doxytag: member="bdm::LQG::initialize" ref="ec1a44c57a4569335a943462b35c3156" args="()" --> 
    209192<div class="memitem"> 
    210193<div class="memproto"> 
    211194      <table class="memname"> 
    212195        <tr> 
    213           <td class="memname">void bdm::LQG::prepare_qr           </td> 
     196          <td class="memname">void bdm::LQG::initialize           </td> 
    214197          <td>(</td> 
    215198          <td class="paramname">          </td> 
     
    222205 
    223206<p> 
    224 set system parameters from <a class="el" href="classbdm_1_1Kalman.html" title="Kalman filter with covariance matrices in square root form.">Kalman</a> filter  
     207set system parameters from <a class="el" href="classbdm_1_1Kalman.html" title="Common abstract base for Kalman filters.">Kalman</a> filter  
    225208<p> 
    226209refresh temporary storage - inefficient can be improved  
    227 <p>References <a class="el" href="ctrlbase_8h-source.html#l00038">A</a>, <a class="el" href="ctrlbase_8h-source.html#l00040">B</a>, <a class="el" href="ctrlbase_8h-source.html#l00042">C</a>, <a class="el" href="ctrlbase_8h-source.html#l00033">dimu</a>, <a class="el" href="ctrlbase_8h-source.html#l00031">dimx</a>, <a class="el" href="ctrlbase_8h-source.html#l00035">dimy</a>, <a class="el" href="ctrlbase_8h-source.html#l00069">hqy</a>, <a class="el" href="ctrlbase_8h-source.html#l00073">post_qr</a>, <a class="el" href="ctrlbase_8h-source.html#l00071">pre_qr</a>, <a class="el" href="ctrlbase_8h-source.html#l00051">Qu</a>, <a class="el" href="ctrlbase_8h-source.html#l00061">qux</a>, <a class="el" href="ctrlbase_8h-source.html#l00049">Qy</a>, <a class="el" href="ctrlbase_8h-source.html#l00063">qyx</a>, and <a class="el" href="ctrlbase_8h-source.html#l00065">s</a>.</p> 
    228  
    229 <p>Referenced by <a class="el" href="ctrlbase_8cpp-source.html#l00021">set_control_parameters()</a>.</p> 
     210<p>References <a class="el" href="ctrlbase_8h-source.html#l00062">dimu</a>, <a class="el" href="ctrlbase_8h-source.html#l00060">dimy</a>, <a class="el" href="ctrlbase_8h-source.html#l00075">hqy</a>, <a class="el" href="ctrlbase_8h-source.html#l00079">post_qr</a>, <a class="el" href="ctrlbase_8h-source.html#l00065">pr</a>, <a class="el" href="ctrlbase_8h-source.html#l00077">pre_qr</a>, <a class="el" href="ctrlbase_8h-source.html#l00050">Qu</a>, <a class="el" href="ctrlbase_8h-source.html#l00067">qux</a>, <a class="el" href="ctrlbase_8h-source.html#l00048">Qy</a>, <a class="el" href="ctrlbase_8h-source.html#l00069">qyx</a>, <a class="el" href="ctrlbase_8h-source.html#l00071">s</a>, and <a class="el" href="ctrlbase_8h-source.html#l00039">S</a>.</p> 
     211 
     212<p>Referenced by <a class="el" href="ctrlbase_8cpp-source.html#l00014">set_control_parameters()</a>.</p> 
    230213 
    231214</div> 
     
    234217<li><a class="el" href="ctrlbase_8h-source.html">ctrlbase.h</a><li>ctrlbase.cpp</ul> 
    235218</div> 
    236 <hr size="1"><address style="text-align: right;"><small>Generated on Sun Aug 16 17:58:19 2009 for mixpp by&nbsp; 
     219<hr size="1"><address style="text-align: right;"><small>Generated on Sat Aug 29 20:49:46 2009 for mixpp by&nbsp; 
    237220<a href="http://www.doxygen.org/index.html"> 
    238221<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.8 </small></address>