Matlab 版 (精华区)
发信人: seesea (闭关戒网★监督有奖), 信区: Matlab
标 题: [合集]仿真中的代数环问题
发信站: 哈工大紫丁香 (2001年06月17日01:54:21 星期天), 站内信件
────────────────────────────────────────
bage (痛学MATLAB中) 于 2001年06月09日10:25:23 星期六 说道:
代数环的形成:
如果模型中由“直通(direct feedthrough)”模块构成一个闭合
回路,则称为代数环,该环中的每个模块都具有一个共同的特点:同一模块输入
与输出之间都包含代数关系。这种模块从物理上讲是“无惯性”的,从时间关系
上讲是“无延迟”的。在simulink库中,具有这种特性的模块有:
增益模块 Gain
乘运算模块 Product
求和模块 Sum
基本数学模块 Abs,Sign,Logical,Math Function等
非线性模块 Saturation,Quantizer,Relay
D非零的状态方程模块 State-Space
分子分母同阶的传递函数模块 Transfer Fcn
零极点数相等的零极点增益模块 Zero-Pole
积分模块的初始条件输入口 Integrator
代数环的处理:
(1)建立等价的模型,尽量排除代数环(2)假如代数环对计算速度的影响可以
容忍,那就不必特别介意(3)假如速度太慢,采取措施(如增加记忆模块,
代数约束模块)消除模型中的代数环,但是需要注意,增加记忆模块有可能
带来副作用。
────────────────────────────────────────
hjdwg (小鱼儿) 于 2001年06月10日18:10:00 星期天 说道:
这个问题好像没那么简单哦
发现代数环很容易,因为simulink会给出警告的,但是消除代数环,
则没那么容易了。尤其是包含非线性模块的时候。
我个人觉得matlab是通过数值方法判断代数环的存在的,因此,出现
奇异常常会给出警告。这种情况经常出现在非线性模块的参数给的“不
正常”的时候。
在matlab的demo里有几个例子,记得是关于摩擦的,里面有消除代数环
的典型手法。
────────────────────────────────────────
Powered by KBS BBS 2.0 (http://dev.kcn.cn)
页面执行时间:3.934毫秒