Simulink and modelling
Simulink is a software tool for modelling and simulating dynamic systems. Simulink has features for including nonlinearities, such as transport delay, in its models. Simulink is written in Matlab and is a product of Mathworks, in Natick MA. We are currently (2003) using Simulink 5. Once a session of Matlab has started up you can click on the pink, green and blue icon on the tool bar to invoke Simulink. From the Simulink menu either call up an existing model or start a new one.
Matlab, by the way, is written in C.
Keep in mind that Simulink carries out a transform from a realm continuous in time and space, to a digitized world where time steps discretely, and quantities change in minimum sized discrete units. Fundamentally, Simulink simulates a general purpose analog computer.
Virtues of Simulink. Simulink requires no writing of code; you drag icons from various menus in the Simulink Library Browser on the left of the screen into your modelling window. Hook up inputs and outputs by dragging the mouse. Be sure to include a "sink" in your model to monitor output. Likely you will use a Scope output. From the model window toolbar click on the right-pointing black triangle to start your simulation. After the simulation has run, click on the scope to see your result.
Simulink Documentation. on the Help menu, and online: the PDF version
of Using Simulink:
http://www.mathworks.com/access/helpdesk/help/pdf_doc/simulink/sl_using.pdf
Data types: Floating point, integer, boolean. ...arrays?
Feedback: Algebraic loops: no dynamic elements in a feedback loop: add transport delay or a transfer function somewhere...
Do the elements of Simulink model neural networks?
Summation
Multiplication / Gain
Inhibition = subtraction, division?
Logic: OR, AND--Boolean signals
Integrators
Switches
Transport delay
SR Latches
Dead Zone / Backlash / Relay
Saturation
Absolute value
Laplace transfer functions: expressions of diff equ's.
Creating Subsystems
Documenting your model: text tool
Setting simulation parameters
Zero Crossing Detection
Why does Simulink sometimes hang up? It reaches a "discontinuity"
in its simulation...
Modelling vs Curve fitting
Evalulation in EN122
emphasizes correctly simulating some stimulus-response relationship.
As you may know, it is possible to approximate an input-output relationship
with Fourier series, neural networks, polynomials,
etc. Our intent in 122 is different: to model with reasonable elements the inner
workings of the oculomotor control system, and simulate the model to demonstrate
that the stimulus-response is satisfied. Invariably there will be parameters--time
constants, natural frequencies, gains, delays, thresholds--to adjust so the
simulated response is as close as possible to the actual recorded response.
All other things being equal, the simpler the model the better. Einstein said a model should be as simple as possible but no simpler. A model's simplicity and beauty may be in the eyes of the beholder (in the course of EN122, the beholder would be me, JDD).