方程

定义组件式

句法

方程Expression1= =Expression2;结束

描述

方程在组件文件中开始方程式部分;本节以an结束结束关键词。等式部分的目的是建立之中的组件的变量,参数,输入,输出,时间的数学关系和这些实体的时间导数。在组件中声明所有成员都可以通过其在方程式节的名称。

Simscape™文件的方程式部分将在整个模拟过程中执行。属性还可以指定仅在模型初始化期间执行的方程(初始=真)属性。欲了解更多信息,请参阅初始方程

以下语法定义了一个简单的公式。

方程Expression1= =Expression2;结束

该声明Expression1= =Expression2是一个等式声明。它指定类的两个对象之间连续的数学等式表达式。一个表达式是一个有效的MATLAB®表达。表达式可以由任何在模型声明中定义的标识符构成。

该公式部分可以包含多个式语句。您还可以指定使用条件方程式如果语句如下:

else EquationList结束

注意

方程表达式的总数,它们的维数,和它们的顺序必须是相同的每一个分支如果-ELSEIF-ELSE声明。

中可以声明中间项中间体组件或域文件的部分,然后在同一组件文件、封闭的复合组件或具有该域类型节点的组件中的任何方程式部分中使用这些术语。

您也可以直接在方程通过定义中间条款语句如下:

方程让声明条款表达条款年底结束

声明子句分配标识符,或标识符集,在等号的左边(=)到等号右边的方程表达式:

LetValue= EquationExpression

表达子句定义的取代的范围。它始于关键字,并且可以包含一个或多个方程表达式。分配给声明子句中的标识符的所有表达式解析过程中代入表达式子句中的方程。

注意

结束关键字是必需的在结束let-in-end声明。

以下规则适用于方程部分:

  • EquationList是类的一个或多个对象EquationExpression,分离用逗号,分号或换行符。

  • EquationExpression可以是一个:

    • 表达式

    • 条件表达式(如果-ELSEIF-ELSE语句)

    • 让表达(let-in-end语句)

  • 表达式是任何有效的MATLAB表达。它可以与以下运算符来形成:

  • 在方程部分,表达式可以不与以下运算符来形成:

  • 结肠运营商可能只需要常量或结束作为操作数。

  • 该组件的所有成员都在方程部分访问,但没有一个是可写的。

下面的MATLAB函数可用于方程部分。该表包含仅属于方程式部分的附加限制。它还表明一个函数是否不连续。如果函数是不连续的,当与一个或多个连续操作数一起使用时,它会引入过零。

指定大小或尺寸的所有参数必须是无量纲的常量或无单位的编译时间参数。

万博1manbetx支持功能

名称 限制 间断
那些
horzcat
vertcat
长度
为ndims
numel
尺寸
是空的
是平等的 可能,如果参数是真实的,并且具有相同的大小和相称的单位
isinf
ISFINITE
isnan
+
UPLUS
减去
UMINUS
mtimes
MPOWER
权力
mldivide Nonmatrix分母
mrdivide Nonmatrix分母
ldivide
rdivide
MOD
刺激
地板上
小区
固定
EQ 不要用连续变量使用
不要用连续变量使用
lt
GT
通用电器
合乎逻辑
因为
棕褐色
ASIN
这些“可信赖医疗组织”
:
ATAN2
日志
LOG10
双曲正弦
cosh
正切
EXP
开方
ABS
标志
任何
所有
马克斯
int32
UINT32
repmat
重塑 扩展空尺寸不支持万博1manbetx
交叉
DIFF 在这两个参数的过载,上部上的第二个参数绑定是4,由于一个的Simscape限制

初始方程

(初始=真)属性可以指定只模型初始化期间执行的方程:

方程(初始=真)Expression1= =Expression2;结束

的默认值初始方程属性为因此你可以声明常规方程时忽略这个属性。

有关何时以及如何指定初始方程的更多信息,请参阅初始方程

例子

对于一个组件,其中Xÿ被声明为1x1的变量,指定形式的方程ÿ=X2

方程ÿ== X ^ 2;结束

对于相同的组件,指定以下分段式:

ÿ = { X 对于 - 1 < = X < = 1 X 2 否则

这个方程,写成的Simscape语言,看起来像:

方程x >= -1 && x <= 1 y == x;否则y = x^2;年底结束

如果一个函数有多个返回值,使用它在语句访问它的值。例如:

令[m, i] = min(a);表示x == m;y = =我;年底结束

介绍了在R2009a