一种基于制造技术

技术编号:39857164 阅读:4 留言:0更新日期:2023-12-30 12:54
本发明专利技术提供了一种基于

【技术实现步骤摘要】
一种基于EDA系统的矩阵求解方法及系统


[0001]本专利技术涉及
EDA
电路
,尤指一种基于
EDA
系统的矩阵求解方法及系统


技术介绍

[0002]在
EDA
电路的电磁场计算过程中,往往离不开矩阵求解问题
Ax=b
, 这些矩阵不仅规模巨大,还十分的稀疏

求解大规模稀疏矩阵最大的特点是分析出矩阵中的非零元模式,即矩阵中元素不为零的值,从而仅仅只需计算矩阵中元素为非零的项,极大的减少形如计算
0*a=0
这样的情况,更加高效的加速求解稀疏矩阵

[0003]但是,如何在现有的稀疏矩阵求解过程中,高效

快速的估计出矩阵中的非零元模式,且不会因矩阵规模的平方增长而带来大量冗余的非零元模式造成系统内存崩溃,成为大规模稀疏矩阵求解亟需解决的问题


技术实现思路

[0004]本专利技术的目的是提供一种基于
EDA
系统的矩阵求解方法及系统,解决现有的稀疏矩阵求解过程中,容易低估非零元模式,且容易因矩阵规模的平方增长而带来大量冗余的非零元模式造成系统内存崩溃的问题

[0005]本专利技术提供的技术方案如下:本专利技术提供一种基于
EDA
系统的矩阵求解方法,包括步骤:获取基于
EDA
系统的线性方程组在迭代求解过程中对应的稀疏矩阵;通过
MaxMatch
算法对所述稀疏矩阵进行行交换,得到第一矩阵;通过
AMD
算法对所述第一矩阵进行列交换,得到第二矩阵,并记录所述
AMD
算法中的矩阵填入值;将所述第二矩阵的填入值转换为图结构,并对所述图结构做最大团分割;基于所述最大团分割的结果对所述第二矩阵进行列交换,得到第三矩阵;基于超节点技术对所述第三矩阵进行分解,得到
L、U
矩阵

[0006]在一些实施方式中,所述的通过
MaxMatch
算法对所述稀疏矩阵进行行交换,得到第一矩阵,具体包括步骤:通过
MaxMatch
算法对所述稀疏矩阵进行行交换,将所述稀疏矩阵的对角线上的零元素变为非零元素,得到对角线均为非零值的所述第一矩阵

[0007]在一些实施方式中,所述的通过
AMD
算法对所述第一矩阵进行列交换,得到第二矩阵,具体包括步骤:循环计算所述第一矩阵的每一列的填入值个数,利用
AMD
算法将填入值少的列依次放在矩阵的左侧,得到填入值个数减少的所述第二矩阵

[0008]在一些实施方式中,所述的对所述图结构做最大团分割,具体包括步骤:通过
ND
算法对所述图结构做最大团分割,得到将矩阵的每一个团都相邻的列交换矩阵;
所述的基于所述最大团分割的结果对所述第二矩阵进行列交换,得到第三矩阵,具体包括:通过所述列交换矩阵将所述第二矩阵重排成所述第三矩阵

[0009]在一些实施方式中,所述第三矩阵每一个团中节点的非零元模式完全一致,形成超节点;所述的基于超节点技术对所述第三矩阵进行分解,具体包括:以所述超节点为单元,对所述第三矩阵进行逐步分解,得到
L、U
矩阵

[0010]另外,本专利技术还提供一种基于
EDA
系统的矩阵求解系统,包括:获取模块,用于获取基于
EDA
系统的线性方程组在迭代求解过程中对应的稀疏矩阵;行交换模块,用于通过
MaxMatch
算法对所述稀疏矩阵进行行交换,得到第一矩阵;第一列交换模块,用于通过
AMD
算法对所述第一矩阵进行列交换,得到第二矩阵,并记录所述
AMD
算法中的矩阵填入值;转换分割模块,用于将所述第二矩阵的填入值转换为图结构,并对所述图结构做最大团分割;第二列交换模,用于基于所述最大团分割的结果对所述第二矩阵进行列交换,得到第三矩阵;分解模块,用于基于超节点技术对所述第三矩阵进行分解,得到
L、U
矩阵

[0011]在一些实施方式中,所述行交换模块通过
MaxMatch
算法对所述稀疏矩阵进行行交换,将所述稀疏矩阵的对角线上的零元素变为非零元素,得到对角线均为非零值的所述第一矩阵

[0012]在一些实施方式中,所述第一列交换模块循环计算所述第一矩阵的每一列的填入值个数,利用
AMD
算法将填入值少的列依次放在矩阵的左侧,得到填入值个数减少的所述第二矩阵

[0013]在一些实施方式中,所述转换分割模块通过
ND
算法对所述图结构做最大团分割,得到将矩阵的每一个团都相邻的列交换矩阵;所述第二列交换模块通过所述列交换矩阵将所述第二矩阵重排成所述第三矩阵

[0014]在一些实施方式中,所述第三矩阵每一个团中节点的非零元模式完全一致,形成超节点;所述分解模块以所述超节点为单元,对所述第三矩阵进行逐步分解,得到
L、U
矩阵

[0015]根据本专利技术提供的一种基于
EDA
系统的矩阵求解方法及系统,能够降低大规模稀疏矩阵分解时的
Fill

In
,且能够减少冗余的非零元模式,避免造成系统内存崩溃,计算效率更高

更稳定

附图说明
[0016]下面将以明确易懂的方式,结合附图说明优选实施方式,对本方案的上述特性

技术特征

优点及其实现方式予以进一步说明

[0017]图1是本专利技术实施例的整体流程示意图;图2是本专利技术实施例的系统结构示意图

[0018]图中标号:1‑
获取模块;2‑
行交换模块;3‑
第一列交换模块;4‑
转换分割模块;5‑

二列交换模块;6‑
分解模块

具体实施方式
[0019]为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对照附图说明本专利技术的具体实施方式

显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图,并获得其他的实施方式

[0020]为使图面简洁,各图中只示意性地表示出了与本专利技术相关的部分,它们并不代表其作为产品的实际结构

另外,以使图面简洁便于理解,在有些图中具有相同结构或功能的部件,仅示意性地绘示了其中的一个,或仅标出了其中的一个

在本文中,“一个”不仅表示“仅此一个”,也可以表示“多于一个”的情形

[002本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.
一种基于
EDA
系统的矩阵求解方法,其特征在于,包括步骤:获取基于
EDA
系统的线性方程组在迭代求解过程中对应的稀疏矩阵;通过
MaxMatch
算法对所述稀疏矩阵进行行交换,得到第一矩阵;通过
AMD
算法对所述第一矩阵进行列交换,得到第二矩阵,并记录所述
AMD
算法中的矩阵填入值;将所述第二矩阵的填入值转换为图结构,并对所述图结构做最大团分割;基于所述最大团分割的结果对所述第二矩阵进行列交换,得到第三矩阵;基于超节点技术对所述第三矩阵进行分解,得到
L、U
矩阵
。2.
根据权利要求1所述的一种基于
EDA
系统的矩阵求解方法,其特征在于,所述的通过
MaxMatch
算法对所述稀疏矩阵进行行交换,得到第一矩阵,具体包括步骤:通过
MaxMatch
算法对所述稀疏矩阵进行行交换,将所述稀疏矩阵的对角线上的零元素变为非零元素,得到对角线均为非零值的所述第一矩阵
。3.
根据权利要求1所述的一种基于
EDA
系统的矩阵求解方法,其特征在于,所述的通过
AMD
算法对所述第一矩阵进行列交换,得到第二矩阵,具体包括步骤:循环计算所述第一矩阵的每一列的填入值个数,利用
AMD
算法将填入值少的列依次放在矩阵的左侧,得到填入值个数减少的所述第二矩阵
。4.
根据权利要求1所述的一种基于
EDA
系统的矩阵求解方法,其特征在于,所述的对所述图结构做最大团分割,具体包括步骤:通过
ND
算法对所述图结构做最大团分割,得到将矩阵的每一个团都相邻的列交换矩阵;所述的基于所述最大团分割的结果对所述第二矩阵进行列交换,得到第三矩阵,具体包括:通过所述列交换矩阵将所述第二矩阵重排成所述第三矩阵
。5.
根据权利要求1所述的一种基于
EDA
系统的矩阵求解方法,其特征在于,所述第三矩阵每一个团中节点的非零元模式完全一致,形成超节点;所述的基于超节点技术对所述第三矩阵进行分解,具体包括:以所述超节点...

【专利技术属性】
技术研发人员:苏立群
申请(专利权)人:巨霖科技上海有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1