一种rc矩阵向量乘法的改进方法

文档序号:105347 发布日期:2021-10-15 浏览:20次 >En<

阅读说明:本技术 一种rc矩阵向量乘法的改进方法 (Improved method for RC matrix vector multiplication ) 是由 陶雄 周振亚 吴大可 程明厚 刘强 于 2021-07-08 设计创作,主要内容包括:一种RC矩阵向量乘法的改进方法,包括以下步骤:建立RC矩阵,将电路中的RC器件存储到RC矩阵中;获取矩阵中非对角线元素的行和列编号,进行乘法运算;将乘法的结果加到结果向量中行编号的位置,将乘法的结果取负值后加到结果向量中列编号的位置。本发明的RC矩阵向量乘法的改进方法,能够利用电路中线性电阻电容产生的电导电容矩阵本身特殊的构造,改进矩阵和向量乘法的过程,减少乘法的运算量,同时也减少了存储容量。(An improved method of RC matrix vector multiplication comprising the steps of: establishing an RC matrix, and storing an RC device in the circuit into the RC matrix; acquiring row and column numbers of non-diagonal elements in the matrix, and performing multiplication operation; and adding the multiplication result to the position of the line number in the result vector, and adding the multiplication result to the position of the column number in the result vector after taking a negative value. The improved method of the RC matrix vector multiplication can improve the process of matrix and vector multiplication by utilizing the special structure of the conductance capacitance matrix generated by the linear resistance capacitance in the circuit, reduce the operation amount of the multiplication and simultaneously reduce the storage capacity.)

一种RC矩阵向量乘法的改进方法

技术领域

本发明涉及模拟电路数值仿真技术领域,特别是涉及一种针对线性器件的电阻电容矩阵做向量乘法的改进方法。

背景技术

对于大部分的电路,尤其是后仿真电路,线性的电阻电容占器件的大多数。线性电阻和线性电容产生的电导和电容矩阵有特殊的性质。器件没有接地的情况下,假设节点标号为i,j,电导或电容值为a,那在矩阵[i,i],[i,j],[j,i],[j,j]位置填入的值分别是a,-a,-a,a。如果器件接地,另外一个端口为k,只会在(k,k)的位置上填入a。这个电导或电容矩阵会重复的乘以电压向量,以计算电路方程的右端项。

在计算过程中,乘法一般比加减法慢。直接遍历矩阵元素做乘法,会导致多余的计算开销。同时存储完整的矩阵也存在存储空间的浪费。

发明内容

为了解决现有技术存在的不足,本发明的目的在于提供一种RC矩阵向量乘法的改进方法,能够利用电路中线性电阻电容产生的电导电容矩阵本身特殊的构造,改进矩阵和向量乘法的过程,减少乘法的运算量,同时也减少了存储容量。

为实现上述目的,本发明提供的一种RC矩阵向量乘法的改进方法,包括以下步骤:

建立RC矩阵,将电路中的RC器件存储到RC矩阵中;

获取矩阵中非对角线元素的行和列编号,进行乘法运算;

将乘法的结果加到结果向量中行编号的位置,将乘法的结果取负值后加到结果向量中列编号的位置。

进一步的,所述建立RC矩阵,将电路中的RC器件存储到RC矩阵中的步骤,还包括,

对于非地节点间的器件,只存储上三角部分的一个元素,位于非对角线上;

对于接地的器件,存储的元素位于对角线上。

进一步的,还包括,所述RC器件的存储采用稀疏矩阵的压缩存储方式。

进一步的,所述对于接地的器件,存储的元素位于对角线上的步骤,还包括,对接地器件产生的对角线元素,用行号+值的数组单独存储。

进一步的,所述获取矩阵中非对角线元素的行和列编号,进行乘法运算的步骤,还包括,获取矩阵中非对角线元素的行和列编号,在右乘的向量中取列、行编号2个元素的差,做乘法。

更进一步的,所述将乘法的结果加到结果向量中行编号的位置,将乘法的结果取负值后加到结果向量中列编号的位置的步骤,还包括,对于矩阵中存储的对角线元素,得到行编号,乘以右乘的向量中行编号的元素,加到结果向量中行编号的位置。

为实现上述目的,本发明还提供一种电子设备,包括存储器和处理器,所述存储器上储存有在所述处理器上运行的计算机程序,所述处理器运行所述计算机程序时执行如上文所述的RC矩阵向量乘法的改进方法的步骤。

为实现上述目的,本发明还提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序运行时执行如上文所述的RC矩阵向量乘法的改进方法的步骤。

本发明的RC矩阵向量乘法的改进方法、电子设备及计算机可读存储介质,具有以下有益效果:通过线性电阻电容的电导电容矩阵做矩阵向量乘法的改进方法,利用电路中线性电阻电容产生的电导电容矩阵本身特殊的构造,改进矩阵和向量乘法的过程,使乘法计算和存储都削减到原始方法的1/4左右,使计算能够得到加速,减少乘法的运算量,同时也减少了存储容量。

本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。

附图说明

附图用来提供对本发明的进一步理解,并且构成说明书的一部分,并与本发明的实施例一起,用于解释本发明,并不构成对本发明的限制。在附图中:

图1为根据本发明的RC矩阵向量乘法的改进方法流程图;

图2为根据本发明的实施例一电路图;

图3为根据本发明的实施例一执行原始线性电容矩阵乘法的示意图;

图4为根据本发明的实施例一执行矩阵向量乘法的示意图;

图5为根据本发明的实施例一执行接地电容矩阵向量乘法的示意图。

具体实施方式

以下结合附图对本发明的优选实施例进行说明,应当理解,此处所描述的优选实施例仅用于说明和解释本发明,并不用于限定本发明。

图1为根据本发明的RC矩阵向量乘法的改进方法流程图,下面将参考图1,对本发明的RC矩阵向量乘法的改进方法进行详细描述。

首先,在步骤101,建立RC矩阵,将电路中的RC器件存储到RC矩阵中。

优选地,对于非地节点间的RC器件,将其存储在RC矩阵的上三角部分,位于RC矩阵的非对角线上。

优选地,对于接地的器件,将其存储在RC矩阵的对角线上。

优选地,RC器件的存储采用稀疏矩阵的压缩存储方式。

优选地,对于RC矩阵的对角线元素,可以用行号+值的数组存储。

在步骤102,获取矩阵中非对角线元素的行和列编号,在右乘的向量中取列、行编号2个元素的差,做乘法。

在步骤103,将乘法的结果加到结果向量中行编号的位置,将乘法的结果取负值后加到结果向量中列编号的位置。

优选地,对于矩阵中存储的对角线元素,得到行编号,乘以右乘的向量中行编号的元素,加到结果向量中行编号的位置。

下面结合一具体实施例对本发明的RC矩阵向量乘法的改进方法做进一步的说明。

图2为根据本发明的实施例一电路图,图3为根据本发明的实施例一执行原始线性电容矩阵乘法的示意图,如图2和图3所示,对图2中的电路实施计算线性电容的电容矩阵和向量的乘法,图3显示了原始的线性电容矩阵做乘法的过程和结果,图中去除了空行空列,本实施例中行列编号与图3保持一致。

步骤1)只存储非接地电容C1的右上角元素-C1,位于矩阵中[1,2]的位置。

步骤2)存储接地电容C2的元素,行编号为3,值为C2,位于矩阵[3,3]的位置。

步骤3)用-C1乘以电压向量第2行减去第1行的值(V3-V2),得到C1*(V2-V3)。

图4为根据本发明的实施例一执行矩阵向量乘法的示意图,如图4所示,在步骤4)将步骤3)计算的结果C1*(V2-V3)加到结果的第1行。

在步骤5)将步骤3)计算的结果取负,得到C1*(V3-V2),加到结果的第2行。

图5为根据本发明的实施例一执行接地电容矩阵向量乘法的示意图,如图5所示,在步骤6)将C2乘以向量第3行元素V4,加到结果的第3行。

本实施例中,步骤5)和6)的结果合并后,最终结果和按原始遍历方式计算的结果保持一致。

本发明实施例中,对于非接地的线性电容电阻,原来有4个填充元素,其中2个在对角线上。改进方法中只保留了一个右上角的非对角元素。这个元素要乘以右边乘法向量中(列号元素-行号元素),并把结果(一个要取反)放在结果向量中的列号,行号元素上;对于接地的线性电容电阻,原来只有一个元素,并且在对角线上。乘法的做法不变,乘以乘法向量中的行号(列号相等)元素,结果放在结果向量的行号元素上。

本发明提供的对电路中线性电阻电容的电导电容矩阵做矩阵向量乘法的改进方法,能够利用电路中线性电阻电容产生的电导电容矩阵本身特殊的构造,改进矩阵和向量乘法的过程,减少乘法的运算量,同时也减少了存储容量。

本发明的一个实施例中,还提供一种电子设备,包括存储器和处理器,所述存储器上储存有在所述处理器上运行的计算机程序,所述处理器运行所述计算机程序时执行如上文所述的RC矩阵向量乘法的改进方法的步骤。

本发明的一个实施例中,还提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序运行时执行如上文所述的RC矩阵向量乘法的改进方法的步骤。

本领域普通技术人员可以理解:以上所述仅为本发明的优选实施例而已,并不用于限制本发明,尽管参照前述实施例对本发明进行了详细的说明,对于本领域的技术人员来说,其依然可以对前述各实施例记载的技术方案进行修改,或者对其中部分技术特征进行等同替换。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

7页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:用于确定区块链的出块时间的方法、装置及可读存储介质

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!