conditionally executed subsystem introduces direct feedthrough
2 visualizzazioni (ultimi 30 giorni)
Mostra commenti meno recenti
i have to run a subsystem conditionally with a fixed step size and generate code for it. I descided to use an enabled subsystem. The subsystem has several inputs and outputs. The problem i am stucking with is that this nonvirtual subsystem now defines a direct feethrough for all outputs (they need all inputs of the same timestep), even if states are introduced inside the subsystem. So what happens is that I introduce an algebraic loop in the parent subsystem - this would not be the case without an enabled subystem.
Adding a unit delay block for the outputs of the enabled subsystem is not acceptable for me because my fixed-step simulation can get instable an inaccurate.
Has anybody any suggestion how to deal with this problem? Or an explanation why the subsystem has to behaves this way?
0 Commenti
Risposte (3)
Fangjun Jiang
il 3 Nov 2011
Did you use a Merge block? That's typically needed when you have a conditionally executed subsystem.
0 Commenti
Pan Zhao
il 23 Giu 2017
Modificato: Pan Zhao
il 23 Giu 2017
Hi Markus,
I was wondering whether you figured out your problem. I met a similar problem and solved it in the way explained here https://www.mathworks.com/matlabcentral/answers/345895-why-does-putting-a-s-function-inside-an-enabled-subsystem-cause-an-algebraic-loop.
Regards Pan
0 Commenti
Vedere anche
Categorie
Scopri di più su General Applications in Help Center e File Exchange
Prodotti
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!