Path: news.mathworks.com!not-for-mail
From: <HIDDEN>
Newsgroups: comp.soft-sys.matlab
Subject: Re: algebraic loop
Date: Tue, 27 Nov 2007 13:59:54 +0000 (UTC)
Organization: FH-Rosenheim
Lines: 32
Message-ID: <fih7sq$ij8$1@fred.mathworks.com>
References: <f8aju5$6tr$1@fred.mathworks.com> <f8ark6$4pi$1@fred.mathworks.com>
Reply-To: <HIDDEN>
NNTP-Posting-Host: webapp-03-blr.mathworks.com
Content-Type: text/plain; charset="ISO-8859-1"
Content-Transfer-Encoding: 8bit
X-Trace: fred.mathworks.com 1196171994 19048 172.30.248.38 (27 Nov 2007 13:59:54 GMT)
X-Complaints-To: news@mathworks.com
NNTP-Posting-Date: Tue, 27 Nov 2007 13:59:54 +0000 (UTC)
X-Newsreader: MATLAB Central Newsreader 1196981
Xref: news.mathworks.com comp.soft-sys.matlab:439613



Why to use memory blocks:

What we want to do with these is to synchronize the arrival
of the data that comes from the feedbacks of your loops and
the inputs to your blocks. 

To be sure that this synchronization will be done and to
prevent the arriving of one of the values before the other,
we use memory blocks (e.g. Zero-Order Hold, or trigger-based
memory blocks) which will receive the values, store them for
a periode (simulation-step) and release them after this
periode in a simultaneous way.

      
in     ---      ---      ---         out
______|MEM|____|+/-|____|Op.|____________
       ---      ---      ---      |
                 |       ---      |
                 |______|MEM|_____|
                         ---   feed

OR/AND

in     ---     ---     ---         out
______|+/-|___|MEM|___|Op.|_____________
       ---     ---     ---      |
        |                       |
        |_______________________|
                            feed


That might be a solution for your problem.