Mercurial > hg > ltpda
view m-toolbox/html_help/help/ug/gui_gltpda_1_content.html @ 22:b11e88004fca database-connection-manager
Update collection.fromRepository
author | Daniele Nicolodi <nicolodi@science.unitn.it> |
---|---|
date | Mon, 05 Dec 2011 16:20:06 +0100 |
parents | f0afece42f48 |
children |
line wrap: on
line source
<p><br> <h2>Data handling in Simulink</h2><hr> Since SIMULINK can only send among blocks a limited set of object types (that is, inside Simulink lines can only travel numbers, vectors or Simulink defined signals), <b>the main concept about LTPDA GUI and LTPDA Simulink models is that what's passed among blocks is not a true LTPDA object (an AO, a filter, a specwin or so), but rather a pure number, intended as an index inside a given array of objects.</b><br><br> Every analysis block in a LTPDA model produces the output of its calculation, then stores this output into a global array - which will be accessible by all following functions/blocks - and send back to Simulink just the index of this newly added object inside the array. <br><br> For example:</p><br><br> <img src="images/model_2.png" alt="A simple analysis" border="1"> <br> <br> <p> <b>The first block</b> load create an AO from a file on disk. This AO is saved in a global array: assuming the array was empty, this is the 1st object, so '1' is the number sent by the first block into Simulink.<br> <b>The second block</b> receives this '1': the corresponding (1st) object is retrieved from the array, then the analysis function (<tt>pwelch</tt>) is applied. The output is appended back into the array, as 2nd element. So, '2' is the content of the signal leaving the second block.<br> <b>The third block</b> receives '2', retrieves the corresponding (2nd) object from the array and produces a plot of it. <br><br> Thus, during the analysis cycle the array of objects becomes populated: unless differently set, all the temporary objects created during the analysis will be canceled at the end of the analisys itself. <br><br><br> The LTPDA GUI is based on two global arrays: <ul> <li> The aforementioned '<b>Input array</b>', which encloses all the LTPDA objects created by the user (for example, loading from file) and the objects generated during the analysis.<br>This is shown into the main panel of the LTPDA GUI.<br></li> <li> The '<b>Output array</b>', meant as a way to separate primary objectives of the analysis from the other - working - objects, contained in the Input array.<br>This is shown into its own panel, the Output panel.</li> </ul> The only way to save an object into the Output array is using the proper 'Send to Output' block, which will copy the object passed from the Input to the Output array.<br> <br><br> <h2>Parameters</h2><hr> In order to enclose all the parameters of each block together with the Simulink model file, each parameters list is converted into a string and saved into the Block Description, a specific field of every block in Simulink.<br> Every time the user selects a block inside a valid LTPDA model the LTPDA GUI will automatically read this description to convert it back to a proper plist. 'Valid' LTPDA models are those created by the GUI, thus containing the short annotation with the author's name, time and date of creation and so on.<br><br> For more information on parameters handling, see the paragraph regarding the Parameters panel. <br><br><br> </p>