一种基于层次化模型的非线性迭代仿真方法与流程

文档序号:25423544发布日期:2021-06-11 21:36阅读:206来源:国知局
一种基于层次化模型的非线性迭代仿真方法与流程

本发明涉及计算机虚拟仿真技术领域,具体为一种基于层次化模型的非线性迭代仿真方法。



背景技术:

仿真技术广泛应用于航空、航天、舰船、兵器以及轨道交通等物理系统的设计与分析,其中集中参数模型在系统原理设计、问题定位、算法优化、以及设计空间探索方面起着重要的作用。相对于有限元模型,由于其模型简单,适合系统的综合分析,也是系统精确分析的基础。根据元件或设备的物理特性,建立元件集中参数模型时,经常会遇到元件的非线性特性。在大多数情况下,元件的非线性特性被忽略,例如绝大多数电气功率设备中包含电阻参数,可以假设其阻值在仿真过程中不随温度变化,这是由于相较于温度场,电路仿真时间系数较小。但是,有一些元件的非线性特性在仿真过程中无法忽略,例如电路仿真中的半导体器件,其输出电流随元件管脚电压的变化呈现非常强的非线性特性,并且在电路仿真过程中,该非线性过程高频动作,因此,必须对其的非线性特性进行仿真建模,即求解器必须包含非线性方程求解能力。为了对非线性元件方程进行求解,通常采用的算法是牛顿拉斐逊迭代法,但是在采用该迭代法求解非线性方程时,对方程的初始解有较高的要求,当初始解比较接近真实解时,方程能快速收敛,当初始值设置不合理时,方程收敛速度可能会很慢,甚至引起数值溢出不收敛。也有一些算法,利用模型简化,例如采用分段线性模型代替详细模型,这是通过牺牲仿真精度来换取仿真速度的和收敛性能。



技术实现要素:

本发明的目的在于提供一种基于层次化模型的非线性迭代仿真方法,以解决上述背景技术中提出的问题,以便提高复杂电气系统仿真的收敛性能和求解效率。

为实现上述目的,本发明提供如下技术方案:

一种基于层次化模型的非线性迭代仿真方法,具体包括如下步骤:

s1、根据仿真模型读入的网表文件、仿真参数设置和当前步长构建求解矩阵,在初始化读入网表文件时,对具有高阶非线性特征的元件进行归类,记为元件g组;

s2、根据步长和元件模型更新jacobian矩阵、右端项;

s3、求解矩阵方程,得到向量解;

s4、根据解向量和右端项向量,进行方程收敛性判断,若收敛,则进入步骤s5;否则回到步骤s2,更新jacobian矩阵和右端项进行迭代,步骤s2-4迭代收敛后得到的解向量为xn;

s5、选择元件g组中元件的详细模型,并构建求解矩阵;

s6、根据元件g组中元件的详细模型,更新jacobian矩阵和右端项;

s7、以xn作为解向量的初始值进行仿真方程的迭代;

s8、根据迭代结果,进行方程收敛性判断,若收敛,迭代收敛得到的解向量x*为当前时刻电路详细模型的精确解,当前时刻迭代结束;否则回到步骤s6,更新jacobian矩阵和右端项进行迭代;根据解向量状态,设置下一个仿真步长,重复步骤s1-s8过程,即可实现仿真模型的瞬态仿真。

优选的,在步骤s1中,选择元件g组中元件的分段线性等效模型,基于节点电压法构建求解矩阵。

优选的,步骤s2-s4为基于牛顿-拉斐逊算法的非线性迭代过程。

优选的,在进行瞬态分析时,当步骤s1中的初始解与精确解接近时,直接调用步骤s5-s8流程,求解仿真模型。

优选的,在进行瞬态分析时,当步骤s1中的初始解与精确解存在较大的偏差时,采用步骤s1-s8流程,求解仿真模型。

与现有技术相比,本发明的有益效果是:本发明针对这些元件采用简化的分段线性等效模型,快速得到迭代方程的初始解,然后采用元件详细模型,以分段线性模型解作为初始解进行迭代求解,得到详细电路的精确解。通过采用分段线性等效模型,可以确保非线性方程求解过程中的收敛性,并且获得的解向量通常非常接近真实解;将分段线性模型获得的解向量作为详细模型的初始解时,由于该向量非常接近真实解,从而在对实际非线性模型进行迭代时,可以快速迭代求解得到精确解。本发明在保证仿真精度同时,有效减少了非线性模型求解过程中的迭代次数,显著提高求解器的求解效率,同时有效提高了系统的收敛性能。

附图说明

图1为一种基于层次化模型的非线性迭代仿真方法的流程示意图;

图2为二极管元件的指数模型和分段线性模型示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

请参阅图1-2,本发明提供一种技术方案:一种基于层次化模型的非线性迭代仿真方法,具体包括如下步骤:

一种基于层次化模型的非线性迭代仿真方法,具体包括如下步骤:

s1、根据仿真模型读入的网表文件、仿真参数设置和当前步长构建求解矩阵,在初始化读入网表文件时,对具有高阶非线性特征的元件进行归类,记为元件g组;在步骤s1中,选择元件g组中元件的分段线性等效模型,基于节点电压法构建求解矩阵;图2所示为二极管元件的指数模型和分段线性模型示意图,其中f(x)为二极管指数等效模型,g(x)为分段线性模型;

s2、根据步长和元件模型更新jacobian矩阵、右端项;

s3、求解矩阵方程,得到向量解;

s4、根据解向量和右端项向量,进行方程收敛性判断,若收敛,则进入步骤s5;否则回到步骤s2,更新jacobian矩阵和右端项进行迭代,步骤s2-s4迭代收敛后得到的解向量为xn;步骤s2-s4为基于牛顿-拉斐逊算法的非线性迭代过程;

s5、选择元件g组中元件的详细模型,例如图2中二极管元件的指数模型,并构建求解矩阵;

s6、根据元件g组中元件的详细模型,更新jacobian矩阵和右端项;

s7、以xn作为解向量的初始值进行仿真方程的迭代;

s8、根据迭代结果,进行方程收敛性判断,若收敛,迭代收敛得到的解向量x*为当前时刻电路详细模型的精确解,当前时刻迭代结束;否则回到步骤s6,更新jacobian矩阵和右端项进行迭代;根据解向量状态,设置下一个仿真步长,重复步骤s1-s8过程,即可实现仿真模型的瞬态仿真。

显然,基于分段线性模型可以快速得到方程的初步解,由于该解实际上与精确解比较接近,因此在详细模型求解时,可以快速得到最终的精确解。该方法可以应用于静态分析,也可应用于瞬态分析。

在瞬态分析时,也可以根据不同的电路状态,有选择地应用,例如在进行瞬态分析时,当步骤s1中的初始解与精确解足够接近时,直接调用s5-s8流程,求解仿真模型;当步骤s1中的初始解与精确解存在较大的偏差时,采用步骤s1-s8流程,求解仿真模型。

本发明为了提高牛顿拉斐逊非线性求解器的迭代求解效率和收敛性能,本发明提供了一种基于层次化模型的非线性迭代仿真方法。数值计算溢出问题是拥有高阶非线性函数特征的元件在方程求解中的主要技术问题,也是造成求解器求解不收敛的一个重要因素。拥有高阶非线性特征的元件在电路仿真中较为常见,例如二极管的指数函数特征,mosfet的二次函数特征等。本发明针对这些元件采用简化的分段线性等效模型,快速得到迭代方程的初始解,然后采用元件详细模型,以分段线性模型解作为初始解进行迭代求解,得到详细电路的精确解。通过采用分段线性等效模型,可以确保非线性方程求解过程中的收敛性,并且获得的解向量通常非常接近真实解;将分段线性模型获得的解向量作为详细模型的初始解时,由于该向量非常接近真实解,从而在对实际非线性模型进行迭代时,可以快速迭代求解得到精确解。这种方法有在利用精确模型进行仿真时,在保证仿真精度同时,有效减少了非线性模型求解过程中的迭代次数,显著提高求解器的求解效率,同时有效提高了系统的收敛性能。

对于本领域技术人员而言,显然本发明不限于上述示范性实施例的细节,而且在不背离本发明的精神或基本特征的情况下,能够以其他的具体形式实现本发明。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本发明的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化囊括在本发明内。不应将权利要求中的任何附图标记视为限制所涉及的权利要求。

此外,应当理解,虽然本说明书按照实施方式加以描述,但并非每个实施方式仅包含一个独立的技术方案,说明书的这种叙述方式仅仅是为清楚起见,本领域技术人员应当将说明书作为一个整体,各实施例中的技术方案也可以经适当组合,形成本领域技术人员可以理解的其他实施方式。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1