Initial condition for Memory block with TRIM (Linear Analysis Tool)

3 views (last 30 days)
I have a relatively large Simulink model (about 100 Integrator blocks), that I would like to initialize with the trim-function in the Linear Analysis Tool. Additionally, the model contains about the same amount of Memory blocks, which are included to get rid of some discontinuous algebraic loops.
Due to the discontinuity, the Memory blocks are kept active during linearization. But when I try to apply the trim function (using the Linear Analysis Tool) to the model, only the Integrators are identified as states, not the Memory blocks. As I see it, those blocks need to be included into the analysis, as they require an adequate initial condition.
Is there any possibility to include these blocks into the trim analysis? I would be glad for any hints.
Georg

Answers (1)

Guy Rouleau
Guy Rouleau on 18 Apr 2013
The Memory block has an option "Direct feedthrough of input during linearization" if you do not want to initialize it during linearization.
A few more things to note:
- If your system is continuous time, I prefer using a transfer function (for example 1/(tau*s+1)) to break the loop. The Memory blcok can slow things down
- If your system is discrete, the you canuse the Unit Delay block to control its state during linerization.
  1 Comment
Georg
Georg on 18 Apr 2013
Thanks for your answer. I think there is a small misunderstanding. The direct feedthrough is not an option here, as it generates an error during linearization (the algebraic loop contains switches, activated by the signal itself). Also, I do want to explicitly include the memory block into the linearization as its initial condition should be retrieved from it. The problem is that, even though the "Direct feedthrough of input during linearization" is disabled, no initial conditions for the blocks are generated. My question is how to retrieve the trim value of the signal through the memory block for the initialization at trim point?
I already noticed some comments regarding different ways to achieve a time delay. My continuous system runs with a variable step solver with the step size being adapted in a wide range, and I wanted the delay to be as small as possible in order to grant minimum deviation from the physical behavior. Under these circumstances, do you still recommend the use of the transfer function?

Sign in to comment.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!