主要内容

isLowIndexDAE

检查是否微分方程组指数低于2

描述

例子

isLowIndexDAE (方程式,var)检查系统方程式一阶半线性微分代数方程(拓扑)微分指数低。如果系统的微分指数01,然后isLowIndexDAE返回逻辑1(真正的)。如果微分指数方程式高于1,然后isLowIndexDAE返回逻辑0(假)。

方程的数量方程式必须匹配变量的数量var

例子

检查DAE系统的微分指数

检查是否一个一阶半线性拓扑系统低微分指数(01)。

创建以下两个微分代数方程组。在这里,x (t)y (t)系统的状态变量。指定两个符号向量方程和变量:方程象征性的向量方程和变量的向量符号函数调用。

信谊x (t) y (t)方程式= [diff (x (t) t) = = x (t) + y (t) x (t) ^ 2 + y (t) ^ 2 = = 1];var = [x (t), y (t));

使用isLowIndexDAE检查系统的微分秩序。这个系统的微分顺序1。系统的指数01,isLowIndexDAE返回1(真正的)。

isLowIndexDAE(方程式一样,var)
ans =逻辑1

减少DAE系统的微分指数

检查是否以下DAE系统有一个低或高微分指数。如果该指数高于1,然后用reduceDAEIndex减少它。

创建以下两个微分代数方程组。在这里,x (t),y (t),z (t)系统的状态变量。指定两个符号向量方程和变量:方程象征性的向量方程和变量的向量符号函数调用。

信谊x (t) y (t) z (t) f (t)方程式= [diff (x (t) t) = = x (t) + z (t)……diff (y (t) t) = = f (t) x (t) = = y (t)];var = [x (t), y (t)、z (t));

使用isLowIndexDAE检查系统的微分指数。对于这个系统isLowIndexDAE返回0()。这就意味着系统的微分指数2或更高版本。

isLowIndexDAE(方程式一样,var)
ans =逻辑0

使用reduceDAEIndex重写系统的微分指数1。调用这个函数有四个输出参数的微分指数还显示原来的系统。新系统有一个额外的状态变量,Dyt (t)

[newEqs newVars, ~, oldIndex] = reduceDAEIndex(方程式一样,var)
newEqs = diff (x (t), t) - z (t) x (t) Dyt (t) - f (t) x (t) - y (t) diff (x (t) t) - Dyt (t) newVars = x (t) y (t) z (t) Dyt (t) oldIndex = 2

检查新系统的微分顺序是否低于2

isLowIndexDAE (newEqs newVars)
ans =逻辑1

输入参数

全部折叠

一阶半线性微分代数方程组,指定为一个向量符号方程或表达式。

状态变量,指定为一个向量的符号函数或函数调用,如x (t)

例子:[x (t), y (t))

版本历史

介绍了R2014b