主要内容

生成Simscape方程从符号表情

Simscape™软件扩展模型万博1manbetx®产品与工具建模和模拟多畴的物理系统,如机械、液压、气动、热、和电子组件。与其他模型块,代表数学运算万博1manbetx或操作信号,Simscape块代表物理组件或直接的关系。Simscape块,你建立一个系统模型就像组装一个物理系统。更多信息关于Simscape软件看看Simscape

您可以通过创建自定义组件扩展Simscape建模环境。当你定义一个组件,使用的方程部分组件文件建立组件的变量之间的数学关系,参数,输入,输出,时间,这些实体的衍生品。符号数学工具箱™和Simscape软件让你执行符号计算和使用这些计算方程的结果部分。的simscapeEquation功能翻译的结果Simscape语言符号计算方程。

将代数和微分方程

假设,你想生成一个Simscape方程从下列常微分方程的解决方案。作为第一步,使用dsolve函数来解决方程:

信谊y (t) Dy = diff (y);s = dsolve (diff (y, 2) = =——^ 2 * y, y (0) = = 1, Dy(π/ a) = = 0);s =简化(s)

解决方案是:

s = cos (* t)

然后,使用simscapeEquation函数重写Simscape语言解决方案:

simscapeEquation (s)

simscapeEquation产生下面的代码:

ans = ' s = = cos (a *);“

的变量时间替换所有的实例变量t除了衍生品与尊重t。使用生成的方程,复制粘贴方程方程部分Simscape组件的文件。不要复制自动生成的变量接下来的等号。

simscapeEquation将任何变量的导数tSimscape符号,X.der,在那里X是时间变量。例如,下面的微分方程转化为一个Simscape方程。同时,这里您显式地指定左派和右派的方程使用语法simscapeEquation (lh、RHS):

信谊x (t) simscapeEquation (diff (x)——x ^ 2 *)
ans = ' x.der = = a ^ 2 * x;”

simscapeEquation也意味着分段表达式Simscape语言。例如,下面的傅里叶变换的结果是一个分段函数:

信谊vu x假设(x,“真实”)f = exp (- x ^ 2 * abs (v)) * sin (v) / v;s =傅里叶(f, v, u)
s =分段(x ~ = 0,每股((u + 1) / x ^ 2)——世界((u - 1) / x ^ 2))

从这个象征性的分段方程,simscapeEquation方程生成有效的代码部分Simscape组件的文件:

simscapeEquation (s)
ans = '如果(x ~ = 0.0) s = =每股(1.0 / x ^ 2 * (u - 1.0)) +世界(1.0 / x ^ 2 * (u + 1.0));其他s = =南;结束的

明确的假设x是真实的再现使用吗信谊:

信谊x

限制

的方程部分Simscape组件文件支持有限数量的功能。万博1manbetx细节和支持的功能列表,请参阅Simscape万博1manbetx方程(Simscape)。如果一个符号表达式包含Simscape函数不支持的,万博1manbetxsimscapeEquation不能代表符号表达式作为Simscape方程和一个警告而不是问题。总是验证转换的结果。与无穷大容易无效的表达式转换。