root/library/doc/html/classbdm_1_1DS.html @ 661

Revision 661, 17.9 kB (checked in by smidl, 15 years ago)

doc

Line 
1<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
2<html xmlns="http://www.w3.org/1999/xhtml">
3<head>
4<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
5<title>mixpp: bdm::DS Class Reference</title>
6<link href="tabs.css" rel="stylesheet" type="text/css"/>
7<link href="doxygen.css" rel="stylesheet" type="text/css"/>
8</head>
9<body>
10<!-- Generated by Doxygen 1.6.1 -->
11<script type="text/javascript">
12<!--
13function changeDisplayState (e){
14  var num=this.id.replace(/[^[0-9]/g,'');
15  var button=this.firstChild;
16  var sectionDiv=document.getElementById('dynsection'+num);
17  if (sectionDiv.style.display=='none'||sectionDiv.style.display==''){
18    sectionDiv.style.display='block';
19    button.src='open.gif';
20  }else{
21    sectionDiv.style.display='none';
22    button.src='closed.gif';
23  }
24}
25function initDynSections(){
26  var divs=document.getElementsByTagName('div');
27  var sectionCounter=1;
28  for(var i=0;i<divs.length-1;i++){
29    if(divs[i].className=='dynheader'&&divs[i+1].className=='dynsection'){
30      var header=divs[i];
31      var section=divs[i+1];
32      var button=header.firstChild;
33      if (button!='IMG'){
34        divs[i].insertBefore(document.createTextNode(' '),divs[i].firstChild);
35        button=document.createElement('img');
36        divs[i].insertBefore(button,divs[i].firstChild);
37      }
38      header.style.cursor='pointer';
39      header.onclick=changeDisplayState;
40      header.id='dynheader'+sectionCounter;
41      button.src='closed.gif';
42      section.id='dynsection'+sectionCounter;
43      section.style.display='none';
44      section.style.marginLeft='14px';
45      sectionCounter++;
46    }
47  }
48}
49window.onload = initDynSections;
50-->
51</script>
52<div class="navigation" id="top">
53  <div class="tabs">
54    <ul>
55      <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
56      <li><a href="pages.html"><span>Related&nbsp;Pages</span></a></li>
57      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
58      <li><a href="files.html"><span>Files</span></a></li>
59    </ul>
60  </div>
61  <div class="tabs">
62    <ul>
63      <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
64      <li><a href="classes.html"><span>Class&nbsp;Index</span></a></li>
65      <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
66      <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
67    </ul>
68  </div>
69  <div class="navpath"><b>bdm</b>::<a class="el" href="classbdm_1_1DS.html">DS</a>
70  </div>
71</div>
72<div class="contents">
73<h1>bdm::DS Class Reference</h1><!-- doxytag: class="bdm::DS" --><!-- doxytag: inherits="bdm::root" -->
74<p>Abstract class for discrete-time sources of data. 
75<a href="#_details">More...</a></p>
76<hr/><a name="_details"></a><h2>Detailed Description</h2>
77<p>Abstract class for discrete-time sources of data. </p>
78<p>The class abstracts operations of: </p>
79<ul>
80<li>data aquisition, </li>
81<li>data-preprocessing, such as scaling of data, </li>
82<li>data resampling from the task of estimation and control. Moreover, for controlled systems, it is able to receive the desired control action and perform it in the next step. (Or as soon as possible).</li>
83</ul>
84<p>The DataSource has three main data interaction structures: </p>
85<ul>
86<li>input, <img class="formulaInl" alt="$ u_t $" src="form_5.png"/>, </li>
87<li>output <img class="formulaInl" alt="$ y_t $" src="form_6.png"/>, </li>
88<li>data, <img class="formulaInl" alt="$ d_t=[y_t,u_t, \ldots ]$" src="form_7.png"/> a collection of all inputs and outputs and possibly some internal variables too. </li>
89</ul>
90
91<p><code>#include &lt;<a class="el" href="bdmbase_8h_source.html">bdmbase.h</a>&gt;</code></p>
92
93<p><a href="classbdm_1_1DS-members.html">List of all members.</a></p>
94<table border="0" cellpadding="0" cellspacing="0">
95<tr><td colspan="2"><h2>Public Member Functions</h2></td></tr>
96<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="abedd82e08ae6686b4b1732a122c2201a"></a><!-- doxytag: member="bdm::DS::DS" ref="abedd82e08ae6686b4b1732a122c2201a" args="()" -->
97&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1DS.html#abedd82e08ae6686b4b1732a122c2201a">DS</a> ()</td></tr>
98<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">default constructors <br/></td></tr>
99<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a76d11928675f276f805655ae2a05d773"></a><!-- doxytag: member="bdm::DS::max_length" ref="a76d11928675f276f805655ae2a05d773" args="()" -->
100virtual int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1DS.html#a76d11928675f276f805655ae2a05d773">max_length</a> ()</td></tr>
101<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns maximum number of provided data, by default it is set to maximum allowed length, shorter <a class="el" href="classbdm_1_1DS.html" title="Abstract class for discrete-time sources of data.">DS</a> should overload this method! See, <a class="el" href="classbdm_1_1MemDS.html#a339a488b93f2fc37c80d9a9573fbd421" title="Returns maximum number of provided data, by default it is set to maximum allowed...">MemDS.max_length()</a>. <br/></td></tr>
102<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac1ec862dec7164fee3284c6f9a51b0ba"></a><!-- doxytag: member="bdm::DS::getdata" ref="ac1ec862dec7164fee3284c6f9a51b0ba" args="(vec &amp;dt)" -->
103virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1DS.html#ac1ec862dec7164fee3284c6f9a51b0ba">getdata</a> (vec &amp;dt)</td></tr>
104<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns full vector of observed data=[output, input]. <br/></td></tr>
105<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa0bf451c7fea73ff4150ff9e83da4832"></a><!-- doxytag: member="bdm::DS::getdata" ref="aa0bf451c7fea73ff4150ff9e83da4832" args="(vec &amp;dt, const ivec &amp;indeces)" -->
106virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1DS.html#aa0bf451c7fea73ff4150ff9e83da4832">getdata</a> (vec &amp;dt, const ivec &amp;indeces)</td></tr>
107<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns data records at indeces. <br/></td></tr>
108<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a19ed7794819b195e9d9adbd29da999bd"></a><!-- doxytag: member="bdm::DS::write" ref="a19ed7794819b195e9d9adbd29da999bd" args="(const vec &amp;ut)" -->
109virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1DS.html#a19ed7794819b195e9d9adbd29da999bd">write</a> (const vec &amp;ut)</td></tr>
110<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Accepts action variable and schedule it for application. <br/></td></tr>
111<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa5a8d2a5125cda38fd191c246129ece6"></a><!-- doxytag: member="bdm::DS::write" ref="aa5a8d2a5125cda38fd191c246129ece6" args="(const vec &amp;ut, const ivec &amp;indeces)" -->
112virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1DS.html#aa5a8d2a5125cda38fd191c246129ece6">write</a> (const vec &amp;ut, const ivec &amp;indeces)</td></tr>
113<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Accepts action variables at specific indeces. <br/></td></tr>
114<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4df78b21d352013d8804a8dda860b7ea"></a><!-- doxytag: member="bdm::DS::step" ref="a4df78b21d352013d8804a8dda860b7ea" args="()" -->
115virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1DS.html#a4df78b21d352013d8804a8dda860b7ea">step</a> ()</td></tr>
116<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Moves from <img class="formulaInl" alt="$ t $" src="form_18.png"/> to <img class="formulaInl" alt="$ t+1 $" src="form_19.png"/>, i.e. perfroms the actions and reads response of the system. <br/></td></tr>
117<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3c9e417d85052396fe74c164857ee67e"></a><!-- doxytag: member="bdm::DS::log_add" ref="a3c9e417d85052396fe74c164857ee67e" args="(logger &amp;L)" -->
118virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1DS.html#a3c9e417d85052396fe74c164857ee67e">log_add</a> (<a class="el" href="classbdm_1_1logger.html">logger</a> &amp;L)</td></tr>
119<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Register <a class="el" href="classbdm_1_1DS.html" title="Abstract class for discrete-time sources of data.">DS</a> for logging into <a class="el" href="classbdm_1_1logger.html" title="Class for storing results (and semi-results) of an experiment.">logger</a> L. <br/></td></tr>
120<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae03d2c93cddd5c3a03107ddd3ae999cf"></a><!-- doxytag: member="bdm::DS::logit" ref="ae03d2c93cddd5c3a03107ddd3ae999cf" args="(logger &amp;L)" -->
121virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1DS.html#ae03d2c93cddd5c3a03107ddd3ae999cf">logit</a> (<a class="el" href="classbdm_1_1logger.html">logger</a> &amp;L)</td></tr>
122<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Register <a class="el" href="classbdm_1_1DS.html" title="Abstract class for discrete-time sources of data.">DS</a> for logging into <a class="el" href="classbdm_1_1logger.html" title="Class for storing results (and semi-results) of an experiment.">logger</a> L. <br/></td></tr>
123<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a069497b610296be053d862a2493be0ce"></a><!-- doxytag: member="bdm::DS::_drv" ref="a069497b610296be053d862a2493be0ce" args="() const " -->
124virtual const <a class="el" href="classbdm_1_1RV.html">RV</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1DS.html#a069497b610296be053d862a2493be0ce">_drv</a> () const </td></tr>
125<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">access function <br/></td></tr>
126<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa6a9a375da64c82fc227bda3418a1f33"></a><!-- doxytag: member="bdm::DS::_urv" ref="aa6a9a375da64c82fc227bda3418a1f33" args="() const " -->
127const <a class="el" href="classbdm_1_1RV.html">RV</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1DS.html#aa6a9a375da64c82fc227bda3418a1f33">_urv</a> () const </td></tr>
128<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">access function <br/></td></tr>
129<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac09878f86907329ac631a3df8755c558"></a><!-- doxytag: member="bdm::DS::_yrv" ref="ac09878f86907329ac631a3df8755c558" args="() const " -->
130const <a class="el" href="classbdm_1_1RV.html">RV</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1DS.html#ac09878f86907329ac631a3df8755c558">_yrv</a> () const </td></tr>
131<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">access function <br/></td></tr>
132<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3a92d77fd97fdb6bf1c8edb1e38c6bbc"></a><!-- doxytag: member="bdm::DS::set_drv" ref="a3a92d77fd97fdb6bf1c8edb1e38c6bbc" args="(const RV &amp;yrv, const RV &amp;urv)" -->
133virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1DS.html#a3a92d77fd97fdb6bf1c8edb1e38c6bbc">set_drv</a> (const <a class="el" href="classbdm_1_1RV.html">RV</a> &amp;yrv, const <a class="el" href="classbdm_1_1RV.html">RV</a> &amp;urv)</td></tr>
134<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">set random variables <br/></td></tr>
135<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aaf0e6941ba5919cae1bc530e2181b109"></a><!-- doxytag: member="bdm::DS::to_string" ref="aaf0e6941ba5919cae1bc530e2181b109" args="()" -->
136virtual string&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1root.html#aaf0e6941ba5919cae1bc530e2181b109">to_string</a> ()</td></tr>
137<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">This method returns a basic info about the current instance. <br/></td></tr>
138<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a0551e3121091c5199bf4413b50522176"></a><!-- doxytag: member="bdm::DS::from_setting" ref="a0551e3121091c5199bf4413b50522176" args="(const Setting &amp;set)" -->
139virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1root.html#a0551e3121091c5199bf4413b50522176">from_setting</a> (const Setting &amp;set)</td></tr>
140<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>
141<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a67d954d255ede776eade7334d4895790"></a><!-- doxytag: member="bdm::DS::to_setting" ref="a67d954d255ede776eade7334d4895790" args="(Setting &amp;set) const " -->
142virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1root.html#a67d954d255ede776eade7334d4895790">to_setting</a> (Setting &amp;set) const </td></tr>
143<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">This method save all the instance properties into the Setting structure. <br/></td></tr>
144<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a1c314bd6d6dacb8ba78ea5eb88fd9516"></a><!-- doxytag: member="bdm::DS::validate" ref="a1c314bd6d6dacb8ba78ea5eb88fd9516" args="()" -->
145virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1root.html#a1c314bd6d6dacb8ba78ea5eb88fd9516">validate</a> ()</td></tr>
146<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">This method TODO. <br/></td></tr>
147<tr><td colspan="2"><h2>Protected Attributes</h2></td></tr>
148<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af96cae44624e79638a91ec4f2c7c81a9"></a><!-- doxytag: member="bdm::DS::dtsize" ref="af96cae44624e79638a91ec4f2c7c81a9" args="" -->
149int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1DS.html#af96cae44624e79638a91ec4f2c7c81a9">dtsize</a></td></tr>
150<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">size of data returned by <code><a class="el" href="classbdm_1_1DS.html#ac1ec862dec7164fee3284c6f9a51b0ba" title="Returns full vector of observed data=[output, input].">getdata()</a></code> <br/></td></tr>
151<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad7467046a0bd05bc992cc5e1bdedb983"></a><!-- doxytag: member="bdm::DS::utsize" ref="ad7467046a0bd05bc992cc5e1bdedb983" args="" -->
152int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1DS.html#ad7467046a0bd05bc992cc5e1bdedb983">utsize</a></td></tr>
153<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">size of data <br/></td></tr>
154<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a22a4b29aa6e9f3bf17bcc4b28567e8bd"></a><!-- doxytag: member="bdm::DS::ytsize" ref="a22a4b29aa6e9f3bf17bcc4b28567e8bd" args="" -->
155int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1DS.html#a22a4b29aa6e9f3bf17bcc4b28567e8bd">ytsize</a></td></tr>
156<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">size of output <br/></td></tr>
157<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad8db125ac35f3b8eeb773fc9a4cb45ec"></a><!-- doxytag: member="bdm::DS::Drv" ref="ad8db125ac35f3b8eeb773fc9a4cb45ec" args="" -->
158<a class="el" href="classbdm_1_1RV.html">RV</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1DS.html#ad8db125ac35f3b8eeb773fc9a4cb45ec">Drv</a></td></tr>
159<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Description of data returned by <code><a class="el" href="classbdm_1_1DS.html#ac1ec862dec7164fee3284c6f9a51b0ba" title="Returns full vector of observed data=[output, input].">getdata()</a></code>. <br/></td></tr>
160<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a9ac5970128fd39f4f6226723cd1de702"></a><!-- doxytag: member="bdm::DS::Urv" ref="a9ac5970128fd39f4f6226723cd1de702" args="" -->
161<a class="el" href="classbdm_1_1RV.html">RV</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1DS.html#a9ac5970128fd39f4f6226723cd1de702">Urv</a></td></tr>
162<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Description of data witten by by <code><a class="el" href="classbdm_1_1DS.html#a19ed7794819b195e9d9adbd29da999bd" title="Accepts action variable and schedule it for application.">write()</a></code>. <br/></td></tr>
163<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aeb9de2a85f0d8257d79d9b68c05c4995"></a><!-- doxytag: member="bdm::DS::Yrv" ref="aeb9de2a85f0d8257d79d9b68c05c4995" args="" -->
164<a class="el" href="classbdm_1_1RV.html">RV</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1DS.html#aeb9de2a85f0d8257d79d9b68c05c4995">Yrv</a></td></tr>
165<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Description of output data. <br/></td></tr>
166<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a13c89cfedbd132742534641ed69391d4"></a><!-- doxytag: member="bdm::DS::LIDs" ref="a13c89cfedbd132742534641ed69391d4" args="" -->
167ivec&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbdm_1_1DS.html#a13c89cfedbd132742534641ed69391d4">LIDs</a></td></tr>
168<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Remember its own index in Logger L, [0=dt, 1=ut]. <br/></td></tr>
169</table>
170<hr/>The documentation for this class was generated from the following file:<ul>
171<li><a class="el" href="bdmbase_8h_source.html">bdmbase.h</a></li>
172</ul>
173</div>
174<hr size="1"/><address style="text-align: right;"><small>Generated on Thu Oct 15 00:07:49 2009 for mixpp by&nbsp;
175<a href="http://www.doxygen.org/index.html">
176<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.6.1 </small></address>
177</body>
178</html>
Note: See TracBrowser for help on using the browser.