Reset Initial Conditions of level 1 S-function states

Hello.
Is it possible to reset the initial conditions of the states of a continuous time level-1 s-fun? Usually the states I.C. are set by mdlInitializeSizes() function call at the beginning of the simulation. But what if in the middle of the sim I want to reset the IC?
Thanks.

回答 (1 件)

Andrew Schenk
Andrew Schenk 2015 年 6 月 17 日

0 投票

There are two ways to do this. You can either:
  1. Add an extra input to the S-function and write a conditional statement to reset the states when the extra input value changes.
  2. Place the S-function inside of an enabled / triggered subsystem and set the "Output when disabled" to "reset" - this will call mdlInitialize every time the subsystem is disabled.

カテゴリ

ヘルプ センター および File ExchangeBlock and Blockset Authoring についてさらに検索

質問済み:

2015 年 6 月 16 日

回答済み:

2015 年 6 月 17 日

Community Treasure Hunt

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

Start Hunting!

Translated by