tot 15 ltpda graphic user interface summary and status n. tateo 26/06/2007
TRANSCRIPT
tot
15
The elements in the GUInow 3
1. The functions library2. The AO array3. The Parameters array4. The Simulink window
tot
15
now 4
1. The functions library
…
The package consists of many functions,each accepting as input the data to be
analyzedand the proper parameters:Matlab
tot
15
To work in Simulink all these functionsare “converted” into Simulink blocks:
Each block is identified by a (visible) tag, which is the function name, and by a
(invisible) handle, which isan univocal number assigned by Simulink.
now 5
1. The functions library
Matlab Simulink
tot
15
Matlab Workspace
now 6
2. The GUI
When the user starts the GUI, two arrays are created:
These are defined as global variables, so they are
entirely and freely accessible by any function.
tot
15
now 8
The Parameters Array
Parameters Arrayname: Parameters
Block handle
Block handle
Block handle
Block handle
Block handle
tot
15
now 9
Where everything goes
ltpda_pwelch(data, parameters)
ltpda_cohere(data, parameters)
ltpda_pwelch(data, parameters)
1
2
3
4
Block handle
Block handle
Block handle
tot
15
now 10
Parameters setting
When the user select a block, the GUI
retrieves the block handle.
If no paramlist is associated to that
handle, a new list is created and the
panel let the user to compile its
values.
Block handle
tot
15
now 11
function(data,parameters)
When the user starts the analysis, each function retrieves the handle of its own block and by that the proper
paramlist from the Parameters array in
memory. Block handle
This provides each functionwith the correct relative parameters.
tot
15
now 12
function(data,parameters)
Each function similarly retrieves the data from the
AO array in memory, by the pointer which is
sent in the Simulink diagram.AO1
name, provenance, data, history…1
Thus every function retrieves by itselfall its data and parameters.
tot
15
now 13
Consequences
• The entire parameters list is saved and keptoutside Simulink: this makes easier to modify previous analysis and to run
nested loops, ie.multiple analyses varying one parameter at
the time.
• No delay is introduced by Simulink, since no real data are sent inside its
diagram (ie, its workspace). There is only one copy of AOs and parameters saved in memory, and every function can retrieve them using the correct pointer (the AO
ordinal number for data, the block handle for parameters).
tot
15
now 14
Consequences
• The analysis speed is maximized, since everything which could slow it down (such as GUI control cycle) is stopped when the
analysis is started.
• The analysis results can easily be gathered and saved
together, data + parameters + diagram, thus ensuring excellent traceability and a
simple data analysis management.
tot
15
now 15
Future steps
• Convert the GUI into a true operative tool,implementing the ability to save and load
analysis(ie, to import and export data parameters
and diagrams).
• Enable it to deal with multiple analysis at once,
ie. more than a single Simulink window at the time.
• Complete the implementation of functions
in the Simulink library.
• Turn the library into a Simulink toolbox, with a tree structure which will make it
easier and faster to use.
tot
15
now 16
Future steps
• Add the Color Control Panel.
• Implement a validation cycle, to check the consistency
of the parameters set by the user prior to the execution
of the analysis.
• Implement the code to enable nested loops
(do we want some kind of optimization system?).
• Let the people in the labs to use it, and mark down
their feelings.