新闻中心

EEPW首页 > 模拟技术 > 设计应用 > 如何解决Saber中收敛性问题

如何解决Saber中收敛性问题

作者:时间:2011-06-12来源:网络收藏

网友的问题如下: domono老师,saber仿真中遇到最多,最复杂的一个问题---

不收敛.这是对我们初学者最大的困难.今天又遇到,做DC分析出现如下错误: *** ERROR "ALG_SINGULAR_JACOBIAN" *** Singular Jacobian matrix. Some possible causes for a singular Jacobian matrix: - Model operating outside of its intended region of operation. - Node/subsystem with no connection to the reference (floating). - Current loops (voltage sources/inductors in parallel). - Missing equation and/or missing variable reference.

出现不收敛是不是由于接地、接口的问题产生的?还是其它原因?能否具体讲解一下吗?谢谢! 其实错误信息里面就含有可能引起不收敛的原因,下面来逐条看看. - Model operating outside of its intended region of operation 模型运行越界,即运算出的结果使得模型超出了它正常的运行范围,对于仿真器来说就是某个或者某一些节点、变量的运算结果在某一个时刻(通常也就是仿真中断的时刻)出现了奇异点,这些点和原来的计算结果出现了非常大的变化(通常是10的n次方的数量级),导致仿真器无法得到一个在误差允许范围内的系统解,所以就不收敛了. - Node/subsystem with no connection to the reference (floating).

节点或者子系统缺少参考点. 这条意思非常明显,在目标系统中的某个节点处于悬空状态,仿真器无法得到该节点的正确解.这种情况下要仔细查找系统,看看有没有这种情况出现.如果有,需要为该节点添加一个上拉或者下拉偏置.

Current loops (voltage sources/inductors in parallel). 系统中出现了电流环路.电流源只能并联不能串联,如果一个环路中出现了两个以上的电流源,仿真器也无法得到正常的解,将会出现不收敛.有意思的是上面还括弧中还列举了另外一种情况,就是电压源和电感直接并联.这种情况下,DC分析是没法收敛的,因为电感的阻抗在DC分析时被视为0,而电压源与它直接并联,此时就会造成电感电流无穷大,引起DC分析不收敛. - Missing equation and/or missing variable reference. 确实系统方程或者缺少系统变量参考.这种情况在自己写MAST语言建模的时候容易出现(Saber自带的模型都是经过验证的,不会出现这种情况),主要是指在自建的模型中,定义的系统变量没有相关的系统方程,造成仿真器无法计算该系统变量,导致仿真不收敛.

在提示的这四种情况中,第四种主要和自建模型有关,如果没有自己写的MAST程序,就不必考虑.第二和第三种容易在DC分析或者TR分析一开始就出现不收敛的情况,诊断起来也相对容易.第一种可能出现在TR分析的任何时刻,这种情况在仿真结果中会有所体现,打开仿真结果文件,仔细查看各个节点的变量波形,能找到波形仿真突变的节点变量.此时就需要研究与该变量相关的模型,通过调整系统结构或者模型参数来避免这种收敛性问题.



评论


相关推荐

技术专区

关闭