初始方程

正规方程在整个模拟执行。该(初始=真)属性可以指定只模型初始化期间执行额外的方程。

常规组件方程本身并不足以初始化DAE系统。考虑与系统ñ连续微分的变量和连续代数变量。为了仿真,该系统具有ñ+自由度,并且必须提供ñ+方程。初始化问题已高达ñ对应于变量衍生物附加未知数。这些额外的未知数,当你为块变量指定初始目标得到满足。初始方程式提供了另一种方法来初始化系统。

一般情况下,你可以指定高优先级目标的最大数量等于在初始化问题的其他未知数的数量。除了从差分变量的未知数,初始化问题也有每个事件变量多一个未知数。这些附加的未知量确定初始方程和高优先级的可变目标的最大组合数。如果有太多的高优先级目标,这些不能全部得到满足。欲了解更多信息,请参阅块级变量的初始化

因为默认值初始方程组属性,你可以声明常规方程时忽略这个属性:

方程(初始=真)%的初始方程[...]端方程(初始=假)%正规方程[...]端方程%正规方程[...]端

初始方程的语法相同正规方程,除外:

  • DER(X在初始方程被视为未知值和初始化期间被求解。

  • 延迟INTEG运营商是不允许的。

如果包括断言在最初的方程式构造,其谓语条件检查一次,求解初始条件(模拟开始之前后,见初始条件计算)。使用这些断言,以防止模型与非物质值初始化。欲了解更多信息,请参阅编程运行时错误和警告

的常见用法用于指定初始方程是在稳定状态下进行初始化的系统,例如:

组分C参数a = {-5, '1 / S'};B = {-2, '1 / S'};端输出x = 5;Y = 10;结束方程DER(x)的一个== * X + B * Y;DER(Y)== B *ÿ;端方程(初始=真)DER(X)== 0;DER(Y)== 0;年底结束

在初始化时,该公式为:

DER(X)== 0;DER(Y)== 0;DER(x)的一个== * X + B * Y;DER(Y)== B *ÿ;

对于模拟的休息,公式为:

DER(x)的一个== * X + B * Y;DER(Y)== B *ÿ;

相关话题