Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JP5317429B2 - Eigen equation solver, solver program - Google Patents
[go: Go Back, main page]

JP5317429B2 - Eigen equation solver, solver program - Google Patents

Eigen equation solver, solver program Download PDF

Info

Publication number
JP5317429B2
JP5317429B2 JP2007128575A JP2007128575A JP5317429B2 JP 5317429 B2 JP5317429 B2 JP 5317429B2 JP 2007128575 A JP2007128575 A JP 2007128575A JP 2007128575 A JP2007128575 A JP 2007128575A JP 5317429 B2 JP5317429 B2 JP 5317429B2
Authority
JP
Japan
Prior art keywords
value
equation
function
order
bisection
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2007128575A
Other languages
Japanese (ja)
Other versions
JP2008282365A (en
Inventor
善行 巳本
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toshiba Information Systems Japan Corp
Original Assignee
Toshiba Information Systems Japan Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Toshiba Information Systems Japan Corp filed Critical Toshiba Information Systems Japan Corp
Priority to JP2007128575A priority Critical patent/JP5317429B2/en
Publication of JP2008282365A publication Critical patent/JP2008282365A/en
Application granted granted Critical
Publication of JP5317429B2 publication Critical patent/JP5317429B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Complex Calculations (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To eliminate a square root calculation, to reduce a division, and to find a proper solution. <P>SOLUTION: This solution device or the like is provided with an initial value generating circuit 42 having a divider 45 for dividing a coefficient in a second order term of a cubic equation by "3" constituting a denominator of the solution, as to the solution of an equation with a second-differential cubic eigenvalue equation of a 3&times;3 determinant, a first group block 43 having two circuits 50<SB>1</SB>, 50<SB>2</SB>of dichotomy circuits for finding one solution, using a dichotomy, based on two initial values, and of using an output from the initial value generating circuit 42, zero and a MAX value that is a sum of the maximum values of diagonal elements in the 3&times;3 determinant, as inputs for the dichotomy circuits, and a block of the second group block 44 having three circuits 50<SB>3</SB>, 50<SB>4</SB>, 50<SB>5</SB>of dichotomy circuits using zero and the MAX value and an output from the first group block 43, as inputs. <P>COPYRIGHT: (C)2009,JPO&amp;INPIT

Description

この発明は、固有値演算を用いた処理を行う各種分野に適用可能な固有方程式の求解装置、求解プログラムに関するものである。 The present invention, solving apparatus applicable eigenequation in various fields for performing processing using the eigenvalue calculation, it relates to solving program.

従来、固有値を演算する際に用いられるN次の固有方程式を解く場合には、数多くの除算や平方根計算を行っており、サイクル数の増加により誤差が伝搬して精度の悪い固有値が出力される問題点があった。また、除算や平方根計算を行う素子のエリア数が多くなり、半導体設計を行う場合に開発期間が長くなるなどの問題があった。 Conventionally, when solving an Nth-order eigen equation used when calculating eigenvalues, many divisions and square root calculations are performed, and an error propagates due to an increase in the number of cycles, and an eigenvalue with poor accuracy is output. There was a problem. In addition, there are problems such as an increase in the number of areas of elements that perform division and square root calculation, and a longer development period when performing semiconductor design.

繰返し演算を行うことにより非線形方程式の解析を行う装置としては、特許文献1に記載のものがあり、収束判定条件を設定して、解析の高速化を図っているものの、平方根計算をなくし、除算を低減させる観点からの発明ではない。   As an apparatus for analyzing a nonlinear equation by performing iterative calculation, there is a device described in Patent Document 1, which sets a convergence judgment condition to speed up the analysis, but eliminates the square root calculation and performs division. It is not an invention from the viewpoint of reducing the above.

特開2003−162517号公報JP 2003-162517 A

本発明は上記のような従来の固有方程式の求解を行う装置における現状に鑑みてなされたもので、その目的は、平方根計算をなくし、除算を低減させることができ、この場合にも適切な解を求めることができ、素子数の低減と誤差伝搬の低減を図ることができ、LSI化する場合には、開発期間の短縮化を図ることが可能な固有方程式の求解装置、求解プログラムを提供することである。 The present invention has been made in view of the current state of the conventional apparatus for solving eigen equations as described above, and the object thereof is to eliminate the square root calculation and reduce the division. can be obtained, it is possible to reduce the reduction and error propagation in the number of elements, in the case of an LSI is solving device eigenvalue equation which can shorten the development time, provides a solving program That is.

本発明に係る固有方程式の求解装置は、各次の係数が整数であり各要素が2進数により表された数により構成されたN次正方行列の固有方程式を(N−1)回微分して得られる1次方程式の解を、前記1次方程式の定数項の数にマイナスを付した数を分子とし、前記1次方程式の1次の項の係数を分母とし、既約分数の形式で表した場合に、当該解の分母を構成する数により前記N次方程式の(N−1)次項の係数を割り算する割算手段及び/または前記Nが2の倍数である場合の前記1次方程式の解の分母を素因数分解して指数を用いた形式で表した場合に得られる2についての指数に対応して前記係数を右シフトするシフト手段とを有する初期値生成回路と、二つの初期値に基づき二分法を用いて一つの解を求める二分法回路を二回路有し、前記初期値生成回路の出力、ゼロ及び前記N次正方行列における対角要素のそれぞれが採り得る最大値の和であるMAX値を前記二分法回路の入力とする第一群ブロックと、前記二分法回路を3、4、・・・、(N−1)回路有する第(N−1)群までのブロックであって、それぞれが前記MAX値、ゼロ及び前群ブロックの出力を入力とするブロックとを具備することを特徴とする。 Solving device characteristic equations according to the present invention, the characteristic equation of the next coefficient is an integer each element configured N-th square matrices by the number represented by the binary number (N-1) order derivative to The obtained linear equation solution is expressed in the form of an irreducible fraction with the number of constant terms of the linear equation minus the number and the coefficient of the primary term of the linear equation as the denominator. The dividing means for dividing the coefficient of the (N-1) th order term of the Nth order equation by the number constituting the denominator of the solution and / or the first order equation when N is a multiple of 2. An initial value generating circuit having shift means for shifting the coefficient to the right in correspondence with the exponent of 2 obtained when the denominator of the solution is factorized and expressed in a form using an exponent ; and two initial values There are two dichotomy circuits for finding one solution based on the dichotomy. , The output of the initial value generating circuit, a first group blocks the MAX value is the sum of the maximum value which can be taken each diagonal elements at zero and the N-th square matrices and the input of the dichotomy circuit, the binary Blocks having up to (N-1) th group having 3, 4,..., (N-1) circuit, each of which receives the MAX value, zero and the output of the previous group block as inputs. It is characterized by comprising.

本発明に係る固有方程式の求解装置では、二分法回路が、二入力値について、これらの値に対応する2点の中点の値である中間値を求める中間値算出手段と、前記中間値を、該当次数方程式の関数における変数として関数値を求める第1の関数値算出手段と、前記二入力値の一方の値または前回の中間値を、該当次数方程式の関数における変数として関数値を求める第2の関数値算出手段と、これら第1、第2の関数値算出手段により求められた関数値の符号に基づき、前回の中間値演算に用いた値の一方を選択して、前記中間値算出手段により算出された中間値と共に前記中間値算出手段へ供給する数値供給制御手段とを具備することを特徴とする。 In the eigen equation solving apparatus according to the present invention, the bisection circuit calculates, for the two input values, an intermediate value calculating means for determining an intermediate value that is a midpoint value of two points corresponding to these values, and the intermediate value is calculated. First function value calculating means for obtaining a function value as a variable in the function of the corresponding degree equation, and a function value as a variable in the function of the corresponding degree equation using one of the two input values or the previous intermediate value as a variable. Based on the sign of the function value obtained by the second function value calculating means and the first and second function value calculating means, one of the values used for the previous intermediate value calculation is selected to calculate the intermediate value. And a numerical value supply control means for supplying the intermediate value calculated to the intermediate value calculating means together with the intermediate value calculated by the means.

本発明に係る固有方程式の求解装置は、N次正方行列の固有方程式のN個の解をそれぞれ二分法を用いて求めるN次用二分法手段、前記N次方程式F(X)=0における関数F(X)の極小値と極大値を前記N次方程式の微分である(N−1)次方程式により求める(N−1)次用二分法手段、前記(N−1)次方程式F´(X)=0における関数F´(X)の極小値と極大値を前記(N−1)次方程式の微分である(N−2)次方程式により求める(N−2)次用二分法手段、・・・、前記3次方程式f(X)=0における関数f(X)の極小値と極大値を3次方程式の微分である2次方程式により求める2次用二分法手段と、前記2次方程式の微分である1次方程式の解を作成し、この解とゼロ及び前記N次正方行列における対角要素のそれぞれが採り得る最大値の和であるMAX値を前記2次用二分法手段へ与える初期値付与手段とを具備し、前記N次用二分法手段、(N−1)次用二分法手段、・・・が前段の手段による出力とゼロ及び前記MAX値を入力として処理を実行することを特徴とする。 An apparatus for solving an eigen equation according to the present invention is an N-order bisection method for obtaining N solutions of an eigen equation of an N-order square matrix using a bisection method, and a function in the N-order equation F (X) = 0. The minimum value and the maximum value of F (X) are obtained by a (N-1) degree equation which is a derivative of the Nth order equation. The (N-1) degree bisection method means, the (N-1) degree equation F '( (N-2) a bisection method for degree (N-2) which obtains a minimum value and a maximum value of a function F ′ (X) at X) = 0 by a (N-2) degree equation which is a derivative of the (N-1) degree equation; ..., a quadratic bisection method for obtaining a minimum value and a maximum value of the function f (X) in the cubic equation f (X) = 0 by a quadratic equation that is a derivative of the cubic equation; create a solution of linear equations is a differential equation, Noso diagonal elements in this solution and the zero and the N-th square matrices Initial value giving means for giving a MAX value that is the sum of the maximum values that can be taken to the secondary bisection means, the N-order bisection means, and the (N-1) secondary bisection method. Means,... Execute processing with the output of the preceding means, zero, and the MAX value as inputs.

本発明に係る固有方程式の求解装置は、N次用二分法手段、(N−1)次用二分法手段、・・・がそれぞれ、N個、(N−1)個、・・・の二分法演算手段を備え、各二分法演算手段が、二つの初期値に基づき二分法を用いて一つの解を求めることを特徴とする。 The eigen-equation solving apparatus according to the present invention includes an N-order bisection method, an (N-1) -order bisection method,..., A bisection of N, (N-1),. It comprises a modulo operation means, and each dichotomy operation means obtains one solution using a dichotomy based on two initial values.

本発明に係る固有方程式の求解装置では、二分法演算手段が、二入力値について、これらの値に対応する2点の中点の値である中間値を求める中間値算出手段と、前記中間値を、該当次数方程式の関数における変数として関数値を求める第1の関数値算出手段と、前記二入力値の一方の値または前回の中間値を、該当次数方程式の関数における変数として関数値を求める第2の関数値算出手段と、これら第1、第2の関数値算出手段により求められた関数値の符号に基づき、前回の中間値演算に用いた値の一方を選択して、前記中間値算出手段により算出された中間値と共に前記中間値算出手段へ供給する数値供給制御手段とを具備することを特徴とする。 In the eigen equation solving apparatus according to the present invention, the bisection method calculating means obtains an intermediate value that is a midpoint value of two points corresponding to these values for the two input values , and the intermediate value And a first function value calculating means for obtaining a function value as a variable in the function of the corresponding degree equation, and a function value as a variable in the function of the corresponding degree equation by using one of the two input values or the previous intermediate value as a variable. Based on the second function value calculation means and the sign of the function value obtained by the first and second function value calculation means, one of the values used for the previous intermediate value calculation is selected, and the intermediate value is selected. And a numerical value supply control means for supplying the intermediate value calculated by the calculating means to the intermediate value calculating means.

本発明に係る固有方程式の求解プログラムは、コンピュータを、N次正方行列の固有方程式のN個の解をそれぞれ二分法を用いて求めるN次用二分法手段、前記N次方程式F(X)=0における関数F(X)の極小値と極大値を前記N次方程式の微分である(N−1)次方程式により求める(N−1)次用二分法手段、前記(N−1)次方程式F´(X)=0における関数F´(X)の極小値と極大値を前記(N−1)次方程式の微分である(N−2)次方程式により求める(N−2)次用二分法手段、・・・、前記3次方程式f(X)=0における関数f(X)の極小値と極大値を3次方程式の微分である2次方程式により求める2次用二分法手段と、前記2次方程式の微分である1次方程式の解を作成し、この解とゼロ及び前記N次正方行列における対角要素のそれぞれが採り得る最大値の和であるMAX値を前記2次用二分法手段へ与える初期値付与手段、として機能させ、前記N次用二分法手段、(N−1)次用二分法手段、・・・が前段の手段による出力とゼロ及び前記MAX値を入力として処理を実行するように制御することを特徴とする。 A program for solving an eigen equation according to the present invention is an Nth-order bisection means for obtaining N solutions of an eigen equation of an N-order square matrix by using a bisection method, the N-order equation F (X) = The (N-1) degree bisection means for obtaining the minimum value and the maximum value of the function F (X) at 0 by the (N-1) degree equation which is a derivative of the Nth order equation, the (N-1) degree equation The minimum value and the maximum value of the function F ′ (X) at F ′ (X) = 0 are determined by the (N−2) degree equation which is a derivative of the above (N−1) degree equation. A quadratic bisection method for obtaining a minimum value and a maximum value of the function f (X) in the cubic equation f (X) = 0 by a quadratic equation that is a derivative of the cubic equation; A solution of a linear equation that is a derivative of the quadratic equation is created, and this solution, zero, and the Nth order square Functioning as an initial value giving means for giving a MAX value, which is the sum of the maximum values that can be taken by each of the diagonal elements in the sequence, to the secondary bisection means, and the N-order bisection means, (N-1) The second dichotomy means,... Controls to execute the process with the output from the preceding means, zero, and the MAX value as inputs.

本発明に係る固有方程式の求解プログラムは、N次用二分法手段、(N−1)次用二分法手段、・・・がそれぞれ、N個、(N−1)個、・・・の二分法演算手段を備え、各二分法演算手段が、二つの初期値に基づき二分法を用いて一つの解を求めることを特徴とする。 Solving program characteristic equations according to the present invention, N following a dichotomy means, (N-1) following a dichotomy means, ... are respectively, N pieces, (N-1) pieces, bisecting ... It comprises a modulo operation means, and each dichotomy operation means obtains one solution using a dichotomy based on two initial values.

本発明に係る固有方程式の求解プログラムでは、二分法演算手段が、二入力値について、これらの値に対応する2点の中点の値である中間値を求める中間値算出手段と、前記中間値を、該当次数方程式の関数における変数として関数値を求める第1の関数値算出手段と、前記二入力値の一方の値または前回の中間値を、該当次数方程式の関数における変数として関数値を求める第2の関数値算出手段と、これら第1、第2の関数値算出手段により求められた関数値の符号に基づき、前回の中間値演算に用いた値の一方を選択して、前記中間値算出手段により算出された中間値と共に前記中間値算出手段へ供給する数値供給制御手段とを具備することを特徴とする。 In the eigen equation solving program according to the present invention, the bisection calculation means obtains an intermediate value that is an intermediate value between two points corresponding to these values for the two input values , and the intermediate value. And a first function value calculating means for obtaining a function value as a variable in the function of the corresponding degree equation, and a function value as a variable in the function of the corresponding degree equation by using one of the two input values or the previous intermediate value as a variable. Based on the second function value calculation means and the sign of the function value obtained by the first and second function value calculation means, one of the values used for the previous intermediate value calculation is selected, and the intermediate value is selected. And a numerical value supply control means for supplying the intermediate value calculated by the calculating means to the intermediate value calculating means.

本発明によれば、各次の係数が整数であり各要素が2進数により表された数により構成されたN次正方行列の固有方程式を(N−1)回微分して得られる1次方程式の解を、前記1次方程式の定数項の数にマイナスを付した数を分子とし、前記1次方程式の1次の項の係数を分母とし、既約分数の形式で表した場合に、二分法回路に初期値を与える初期値生成回路が、当該解の分母を構成する数により前記N次方程式の(N−1)次項の係数を割り算する割算手段及び/または前記Nが2の倍数である場合の前記1次方程式の解の分母を素因数分解して指数を用いた形式で表した場合に得られる2についての指数に対応して前記係数を右シフトするシフト手段により構成されるので、平方根演算がなくなり、割算が低減し、素子数の低減を図ることができ、各段において前段で得られた解を用いて二分法演算を行うので、誤差の伝搬は各段で遮断されることになり、平方根演算や除算などを繰り返して誤差伝搬を遮断することのなく最終的な解を求める従来手法に比べて誤差伝搬の低減を図ることができ、LSI化する場合には、開発期間の短縮化を図ることが可能となる。 According to the present invention, a linear equation obtained by differentiating an eigen equation of an N-order square matrix in which each order coefficient is an integer and each element is constituted by a number represented by a binary number (N-1) times. When the solution of is expressed in the form of an irreducible fraction with the number obtained by adding a minus to the number of constant terms of the linear equation as the numerator and the coefficient of the primary term of the linear equation as the denominator, An initial value generating circuit for giving an initial value to the modulus circuit divides the coefficient of the (N-1) th order term of the Nth order equation by the number constituting the denominator of the solution and / or N is a multiple of 2 Since the denominator of the solution of the linear equation in the case of ## EQU1 ## is composed of shift means for shifting the coefficient to the right in correspondence with the exponent for 2 obtained when prime factorization is used and expressed in a form using an exponent . Square root operation is eliminated, division is reduced, and the number of elements is reduced. In each stage, since the dichotomy is performed using the solution obtained in the previous stage, error propagation is blocked at each stage, and error propagation is blocked by repeating square root calculation, division, etc. Therefore, the error propagation can be reduced as compared with the conventional method for obtaining a final solution without any problem, and in the case of LSI, the development period can be shortened.

また、本発明によれば、同じ構成の二分法回路を複数用いた構造であるため、回路の共通化を図り開発期間の短縮を実現できる。   Further, according to the present invention, since the structure uses a plurality of bisection circuits having the same configuration, the circuit can be shared and the development period can be shortened.

更に、本発明では、極小値と極大値を求めて次段の二分法手段へ送る構成を採用し、この極小値と極大値に加えてゼロ及びN次正方行列における対角要素のそれぞれが採り得る最大値の和であるMAX値を初期値として二分法により解を求めるので、解を挟んだ二つの値に基づき二分法による処理がなされ、適切に解を求めることが可能となる。 Furthermore, the present invention adopts a configuration in which the minimum value and the maximum value are obtained and sent to the bisection method in the next stage, and in addition to the minimum value and the maximum value, each of the diagonal elements in the zero and Nth order square matrices is adopted. Since the solution value is obtained by the bisection method with the MAX value that is the sum of the maximum values obtained as an initial value, processing by the dichotomy method is performed based on the two values sandwiching the solution, and the solution can be obtained appropriately.

以下、添付図面を参照して本発明に係る固有方程式の求解装置及び求解プログラムの実施例を説明する。各図において、同一の構成要素には、同一の符号を付して重複する説明を省略する。図1に示すように、本実施例に係る固有方程式の求解装置は、一般的にN次正方行列によるN次固有方程式のN個の解をそれぞれ二分法を用いて求めるN次用二分法手段10を備える。 DESCRIPTION OF EMBODIMENTS Hereinafter, embodiments of an eigen equation solving apparatus and an solving program according to the present invention will be described with reference to the accompanying drawings. In each figure, the same components are denoted by the same reference numerals and redundant description is omitted. As shown in FIG. 1, the eigen-equation solving apparatus according to the present embodiment is generally an N-order bisection method for obtaining N solutions of an N-th order eigen equation by an N-order square matrix by using a bisection method. 10 N.

また、(N−1)次用二分法手段10(N−1)、・・・、2次用二分法手段10を備える。(N−1)次用二分法手段10(N−1)は、N次方程式F(X)=0における関数F(X)の極小値と極大値を上記N次方程式の微分である(N−1)次方程式により求めるものである。(N−2)次用二分法手段10(N−2)は、上記(N−1)次方程式F´(X)=0における関数F´(X)の極小値と極大値を上記(N−1)次方程式の微分である(N−2)次方程式により求めるものである。以下、同様の手段がNに応じて設けられており、最前段として、2次用二分法手段10が設けられ、この2次用二分法手段10は、後段となる二分法手段における処理対象に係る3次方程式f(X)=0における関数f(X)の極小値と極大値を3次方程式f(X)=0の微分である2次方程式f´(X)=0により求めるものである。 Also it comprises (N-1) following a dichotomy means 10 (N-1), · · ·, 2-order for dichotomy means 10 2. (N-1) degree bisection means 10 (N-1) is a derivative of the above-mentioned Nth order equation for the minimum and maximum values of the function F (X) in the Nth order equation F (X) = 0 (N -1) It is obtained by the following equation. (N-2) Next bisection method 10 (N-2) calculates the minimum value and the maximum value of the function F ′ (X) in the above-mentioned (N−1) -order equation F ′ (X) = 0. -1) It is obtained by a (N-2) linear equation which is a derivative of the linear equation. Thereafter, the same means are provided according to N, as the leading stage, the secondary use dichotomy means 10 2 is provided, the secondary for dichotomy means 10 2, processing in the dichotomy means comprising a subsequent stage The minimum value and the maximum value of the function f (X) in the cubic equation f (X) = 0 related to the object are obtained by the quadratic equation f ′ (X) = 0 which is a derivative of the cubic equation f (X) = 0. Is.

また、求解装置には、初期値付与手段11が備えられている。初期値付与手段11は、与えられたN次正方行列の各要素に基づき固有方程式を生成する方程式生成手段13からN次方程式の係数値などを与えられ、2次用二分法手段10の処理対象に係る2次方程式の微分である1次方程式の解を作成し、この解とゼロ及び上記N次正方行列における対角要素のそれぞれが採り得る最大値の和であるMAX値(以下、単にMAX値という)を上記2次用二分法手段10へ与えるものである。この結果、2次用二分法手段10に対しては、上記2次方程式の関数における極小値である方程式の解が初期値として与えられると共にゼロ及びMAX値が与えられる。また、初期値付与手段11は、当初のN次方程式の係数に含まれておらず、微分の結果係数となる数値を保持し、これをN次用二分法手段10、(N−1)次用二分法手段10(N−1)、・・・、2次用二分法手段10中の必要な手段へ供給する。例えば、固有方程式がX3+BX2+CX+D=0であるときには、3乗の項を微分することにより、「3」が係数となるので、これを例えば検出保持し、2次用二分法手段10へ供給する。 Further, the solution finding apparatus is provided with an initial value giving means 11. The initial value applying means 11 is given coefficient value of N next equation and from the equation generating unit 13 for generating a characteristic equation based on the elements of a given N-th square matrices, of the secondary for dichotomy means 10 of processing A solution of a linear equation that is a derivative of a quadratic equation related to the object is created, and a MAX value (hereinafter simply referred to as a sum of the maximum value that can be taken by each of the zero elements and the diagonal elements in the N-order square matrix is created. the) that MAX value is intended to be given to the secondary for dichotomy means 10 2. As a result, with respect to the secondary use dichotomy means 10 2, zero and MAX values are given with the solution of the equation is a minimum value in a function of the quadratic equation are given as an initial value. The initial value assigning means 11 retains a numerical value that is not included in the coefficient of the original Nth-order equation and becomes a differential coefficient, and uses this as the Nth-order bisection means 10 N , (N−1). next for dichotomy means 10 (N-1), ··· , supplied to the required means of secondary for dichotomy means 10 2. For example, when the eigen equation is X 3 + BX 2 + CX + D = 0, “3” becomes a coefficient by differentiating the third power term, so that this is detected and held, for example, and the secondary bisection means 10 2 To supply.

上記のMAX値は、図2に示されるように、N次正方行列における対角要素であるa11、a22、a33、・・・、aNNの各要素がそれぞれ採り得る最大値の和である。各要素がそれぞれ採り得る最大値は、各要素のビット数により決定され、符号なしの3ビットであれば最大値は「8」であり、符号付きの6ビットであれば最大値は「31」である。この和がMAX値であるから、3×3の行列で符号なしの3ビットであれば、「8+8+8=24」となり、3×3の行列で符号付きの6ビットであれば、「31+31+31=93」となる。 As shown in FIG. 2, the MAX value is the sum of the maximum values that can be taken by each of the elements a 11 , a 22 , a 33 ,..., A NN which are diagonal elements in an N-order square matrix. It is. The maximum value that each element can take is determined by the number of bits of each element. The maximum value is “8” if it is 3 bits without a sign, and the maximum value is “31” if it is 6 bits with a sign. It is. Since this sum is a MAX value, if it is 3 bits without a sign in a 3 × 3 matrix, “8 + 8 + 8 = 24”, and if it is 6 bits with a sign in a 3 × 3 matrix, “31 + 31 + 31 = 93”. "

N次用二分法手段10、(N−1)次用二分法手段10(N−1)、・・・は、それぞれ、N個、(N−1)個、・・・の二分法演算手段12を備える。 N-order bisection means 10 N , (N−1) -order bisection means 10 (N−1) ,... Are respectively N, (N-1),. Means 12 are provided.

N次用二分法手段10、(N−1)次用二分法手段10(N−1)、・・・が前段の手段による出力とゼロ及び上記MAX値を入力として与えられている。そして、N次用二分法手段10、(N−1)次用二分法手段10(N−1)、・・・、2次用二分法手段10において、各二分法演算手段12へ上記の初期値の中から選択された2つの初期値が与えられており、各二分法演算手段12へ与えられる2つの初期値は、それぞれ異なる解を挟むように該当の二分法演算手段12へ設定される。 N-order bisection means 10 N , (N−1) -order bisection means 10 (N−1) ,... Are provided with the output from the preceding means, zero, and the MAX value as inputs. Then, N following a dichotomy means 10 N, (N-1) following a dichotomy means 10 (N-1), ··· , in the secondary for dichotomy means 10 2, the each dichotomy calculating means 12 Two initial values selected from among the initial values are given, and the two initial values given to each of the dichotomy calculation means 12 are set in the corresponding dichotomy calculation means 12 so as to sandwich different solutions. Is done.

二分法演算手段12は、図3に示されるように構成されている。二分法演算手段12は、中間値算出手段21、第1の関数値算出手段22、第2の関数値算出手段23、数値供給制御手段24を備える。中間値算出手段21は、二入力値について、これらの値に対応する2点の中点の値である中間値を求めるものである。例えば、図4に示されている関数F(X)について、F(X)=0の方程式の解を二分法により求めると、次の通りになる。当初において、初期値X0とX1が与えられると、中間値として(X0+X1)/2を求め、出力OUTとする。次に、上記出力OUTをX2とし、F(X2)とF(X0)の符号が異なるのでX0を用いて、(X0+X2)/2を求め、出力OUTとする。図4の例ではないが、F(X2)とF(X1)の符号が異なる場合にはX1を用いて、(X1+X2)/2を求める。図4において、上記で求めた(X0+X2)/2を出力OUTとする。次に、上記出力OUTをX3とし、F(X3)とF(X2)の符号が異なるのでX2を用いて、(X3+X2)/2を求め、出力OUTとする。以下同様に、このような繰返し演算を行う。このようにして、解に近づいてゆくものである。 The dichotomy calculation means 12 is configured as shown in FIG. The bisection calculation unit 12 includes an intermediate value calculation unit 21, a first function value calculation unit 22, a second function value calculation unit 23, and a numerical value supply control unit 24. The intermediate value calculation means 21 obtains an intermediate value that is the value of the midpoint of two points corresponding to these values for the two input values. For example, with respect to the function F (X) shown in FIG. 4, the solution of the equation of F (X) = 0 is obtained by the bisection method as follows. Initially, when initial values X0 and X1 are given, (X0 + X1) / 2 is obtained as an intermediate value and set as output OUT. Next, the output OUT is set to X2, and since F (X2) and F (X0) have different signs, X0 is used to obtain (X0 + X2) / 2 and set as the output OUT. Although not the example of FIG. 4, when F (X2) and F (X1) have different signs, X1 is used to obtain (X1 + X2) / 2. In FIG. 4, (X0 + X2) / 2 obtained above is defined as an output OUT. Next, the output OUT is set to X3, and the signs of F (X3) and F (X2) are different, so X2 is used to obtain (X3 + X2) / 2 and set as the output OUT. In the same manner, such repeated calculation is performed. In this way, it approaches the solution.

第1の関数値算出手段22は、中間値算出手段21により得られた中間値を、該当次数方程式の関数における変数として関数値を求めるものである。第1の関数値算出手段22は、この二分法演算手段12がN次用二分法手段に用いられている場合には、当該N次関数の変数に中間値算出手段21の出力を代入して関数値を求める。また、この二分法演算手段12が(N−1)次用二分法手段に用いられている場合には、上記N次関数を微分して得た(N−1)次関数の変数に中間値算出手段21の出力を代入して関数値を求める。以下同様に、この二分法演算手段12が2次用二分法手段に用いられている場合には、上記N次関数を何度か微分して得た2次関数の変数に中間値算出手段21の出力を代入して関数値を求める。   The first function value calculation means 22 obtains a function value using the intermediate value obtained by the intermediate value calculation means 21 as a variable in the function of the corresponding degree equation. The first function value calculation means 22 substitutes the output of the intermediate value calculation means 21 for the variable of the N-order function when the dichotomy calculation means 12 is used as the N-order bisection method means. Find the function value. Further, when the dichotomy calculation means 12 is used as an (N-1) degree bisection means, an intermediate value is added to the variable of the (N-1) degree function obtained by differentiating the N order function. A function value is obtained by substituting the output of the calculation means 21. Similarly, when the dichotomy calculation means 12 is used as a secondary dichotomy means, the intermediate value calculation means 21 is added to the variable of the quadratic function obtained by differentiating the N-order function several times. The function value is obtained by substituting the output of.

第2の関数値算出手段23は、二入力値X0、X1の一方の値(ここでは、X0)または中間値算出手段21から出力された前回の中間値を、該当次数方程式の関数における変数として代入し関数値を求めるものである。第2の関数値算出手段23は、この二分法演算手段12がN次用二分法手段に用いられている場合には、当該N次関数の変数に上記いずれかの値を代入して関数値を求める。また、この二分法演算手段12が(N−1)次用二分法手段に用いられている場合には、上記N次関数を微分して得た(N−1)次関数の変数に上記いずれかの値を代入して関数値を求める。以下同様に、この二分法演算手段12が2次用二分法手段に用いられている場合には、上記N次関数を何度か微分して得た2次関数の変数に上記いずれかの値を代入して関数値を求める。   The second function value calculating means 23 uses one of the two input values X0 and X1 (here, X0) or the previous intermediate value output from the intermediate value calculating means 21 as a variable in the function of the corresponding degree equation. Substituting for a function value. The second function value calculating means 23 substitutes one of the above values for the variable of the N-order function when the dichotomy computing means 12 is used as the N-order bisection means. Ask for. Further, when the dichotomy calculation means 12 is used as the (N-1) degree bisection means, any one of the variables of the (N-1) degree function obtained by differentiating the N order function is any of the above. A function value is obtained by substituting these values. Similarly, when the dichotomy calculation means 12 is used as a secondary dichotomy means, any one of the values described above is used as a variable of the quadratic function obtained by differentiating the N-order function several times. Substituting for the function value.

数値供給制御手段24は、第1の関数値算出手段22と第2の関数値算出手段23により求められた関数値の符号に基づき、前回の中間値演算に用いた値の一方を選択し、上記中間値算出手段21により算出された中間値と共に上記中間値算出手段21へ供給するものである。この数値供給制御手段24は、中間値算出手段21に供給される2入力が、解を挟んだ二つの値となること、つまり、図4に示される例えばX1とX2の位置関係になることを確保するための回路である。   The numerical value supply control unit 24 selects one of the values used in the previous intermediate value calculation based on the sign of the function value obtained by the first function value calculation unit 22 and the second function value calculation unit 23, The intermediate value calculated by the intermediate value calculating means 21 is supplied to the intermediate value calculating means 21 together with the intermediate value. The numerical value supply control means 24 confirms that the two inputs supplied to the intermediate value calculation means 21 are two values sandwiching the solution, that is, for example, the positional relationship between X1 and X2 shown in FIG. This is a circuit for securing.

二分法演算手段12における繰返し演算回数は、演算回数制御手段20が演算回数をカウントして、或いは第1の関数値算出手段22または第2の関数値算出手段23の出力を参照して、当該出力とゼロとの差が所定以内となったことを検出して、制御する。   The number of repetitive calculations in the bisection calculation unit 12 is calculated by counting the number of calculations by the calculation number control unit 20 or referring to the output of the first function value calculation unit 22 or the second function value calculation unit 23. Control is performed by detecting that the difference between the output and zero is within a predetermined range.

以上の構成に係る手段は、コンピュータが図5に示されるフローチャートに対応する固有方程式の求解プログラムを実行することにより実現される。コンピュータは、与えられたN次正方行列の各要素に基づき固有方程式を生成する(S11)。このステップS11の次に、上記において生成した固有方程式の関数を微分して1次関数とした場合の解を求める(S12)。 The means according to the above configuration is realized when the computer executes a program for solving an eigen equation corresponding to the flowchart shown in FIG. The computer generates an eigen equation based on each element of the given Nth order square matrix (S11). Following this step S11, a solution is obtained when the function of the eigen equation generated above is differentiated into a linear function (S12).

ステップS12において求めた解と、0(ゼロ)と上記MAX値を2次用二分法手段へ与えて、解を求め(S13)、所定演算回数に達したか(或いは第1の関数値算出手段22または第2の関数値算出手段23の出力を参照して、当該出力とゼロとの差が所定以内となったか)を検出する(S14)。 The solution obtained in step S12, 0 (zero) and the above MAX value are given to the secondary bisection means to obtain the solution (S13), and whether the predetermined number of operations has been reached (or the first function value calculation means) 22 or the output of the second function value calculation means 23 is detected (whether the difference between the output and zero is within a predetermined range) (S14).

上記のステップS13においては、二分法演算手段12として図6に示されるフローチャートに対応する処理を行っている。即ち、与えられた2入力値を用いて中間値を求め(S21)、既に説明した通りの次数(ここでは2)の関数の変数に、上記中間値を代入して第1の関数値を求める(S22)。また、既に説明した通りの次数(ここでは2)の関数の変数に、二入力値の一方の値または前回の中間値を代入して第2の関数値を求める(S23)。   In step S13 described above, processing corresponding to the flowchart shown in FIG. That is, the intermediate value is obtained using the given two input values (S21), and the first function value is obtained by substituting the intermediate value into the function variable of the order (here, 2) as already described. (S22). Further, the second function value is obtained by substituting one value of the two input values or the previous intermediate value for the variable of the function of the order (here 2) as already described (S23).

ステップS23に続いて第1の関数値の符号と第2の関数値の符号に基づき、前回の中間値演算に用いた2値の一方を選択して、上記算出された中間値と共に中間値算出手段へ供給する(S24)。これを受けて、与えられた2入力値を用いて中間値を求め(S25)、所定演算回数の演算が行われたかを検出し(S26)、所定演算回数の演算が行われていなければ、ステップS22へ戻って処理を続け、所定演算回数の演算が行われると処理を終了する。   Subsequent to step S23, based on the sign of the first function value and the sign of the second function value, one of the two values used in the previous intermediate value calculation is selected, and the intermediate value is calculated together with the calculated intermediate value. (S24). In response to this, an intermediate value is obtained using the given two input values (S25), it is detected whether the predetermined number of calculations have been performed (S26), and if the predetermined number of calculations has not been performed, Returning to step S22, the process is continued, and the process is terminated when a predetermined number of calculations are performed.

図6のフローチャートに対応する処理の終了により、図5ではステップS14からステップS15へ進み、ステップS13において求めた解と、0(ゼロ)と上記MAX値を3次用二分法手段へ与えて、解を求めさせ(S15)、所定演算回数に達したか(或いは第1の関数値算出手段22または第2の関数値算出手段23の出力を参照して、当該出力とゼロとの差が所定以内となったか)を検出する(S16)。上記ステップS15においても上記図6のフローチャートを用いて説明した処理が行われ、所定演算回数に達した場合には、次の次数である4次用二分法手段による求解処理へ進み、以下同様に次数を上げて前段の処理により得られた解と、0(ゼロ)と上記MAX値を入力値として処理が行われる。 When the process corresponding to the flowchart of FIG. 6 is completed, the process proceeds from step S14 to step S15 in FIG. 5, and the solution obtained in step S13, 0 (zero), and the MAX value are given to the third-order bisection method. A solution is obtained (S15), whether the predetermined number of calculations has been reached (or referring to the output of the first function value calculation means 22 or the second function value calculation means 23, and the difference between the output and zero is predetermined. (S16). Also in step S15, the processing described with reference to the flowchart of FIG. 6 is performed. When the predetermined number of calculations is reached, the process proceeds to the solution processing by the quaternary bisection method that is the next order, and so on. Processing is performed using the solution obtained by increasing the order and the previous processing, 0 (zero), and the MAX value as input values.

そして、最終的にN次用二分法手段による求解処理へ進み、前段のステップにおいて求めた解((N−1)次方程式の解)と、0(ゼロ)と上記MAX値をN次用二分法手段へ与えて、解を求めさせ(S17)、所定演算回数に達したか(或いは第1の関数値算出手段22または第2の関数値算出手段23の出力を参照して、当該出力とゼロとの差が所定以内となったか)を検出する(S18)。上記ステップS17においても上記図6のフローチャートを用いて説明した処理が行われ、所定演算回数に達した場合には、固有方程式の解が求まったことになり、求解処理を終了する。 Then, the process finally proceeds to the solution processing by the N-order bisection method, and the solution obtained in the previous step (solution of the (N−1) -order equation), 0 (zero), and the MAX value are divided into the N-order bisection. And the solution is obtained (S17), whether the predetermined number of calculations has been reached (or referring to the output of the first function value calculating means 22 or the second function value calculating means 23, Whether the difference from zero is within a predetermined range) is detected (S18). In step S17 as well, the process described with reference to the flowchart of FIG. 6 is performed, and when the predetermined number of calculations has been reached, the solution of the eigen equation has been obtained, and the solution process ends.

次に、ハードウエアにより構成した固有方程式の求解装置の実施例を説明する。図7には、3行3列の正方行列に対応する固有方程式の求解装置の実施例に係る構成図が示されている。この固有方程式の求解装置は、方程式生成手段41、初期値付与手段である初期値生成回路42、2次用二分法手段である第一群ブロック43、3次用二分法手段である第二群ブロック44、制御回路49を主な構成要素として構成されている。 Next, a description will be given of an embodiment of an eigen equation solving apparatus configured by hardware. Figure 7 is a block diagram according to an embodiment of the solving device characteristic equations corresponding to square matrix of three rows and three columns are shown. This eigen equation solving apparatus includes an equation generating means 41, an initial value generating circuit 42 as an initial value giving means, a first group block 43 as a secondary bisection means, and a second group as a tertiary bisection means. The block 44 and the control circuit 49 are configured as main components.

方程式生成手段41は、3行3列の正方行列の数値を入力され、これに対応する固有方程式を生成するもので、実際には行列計算により3次方程式の係数を求める。N次の固有方程式では、N次の項に係る係数は1であり、ここでは3次方程式の3次の項における係数が1である。また、2次の項における係数をB、1次の項における係数をC、定数項の値をDとすると、方程式生成手段41は、B、C、Dを求めて、これらを初期値生成回路42へ送出する。 The equation generation means 41 receives a numerical value of a 3 × 3 square matrix and generates a corresponding eigen equation . In practice, the equation generation means 41 obtains a coefficient of the cubic equation by matrix calculation. In the Nth-order eigen equation , the coefficient relating to the Nth-order term is 1, and here, the coefficient in the third-order term of the cubic equation is 1. Further, assuming that the coefficient in the second-order term is B, the coefficient in the first-order term is C, and the value of the constant term is D, the equation generating means 41 obtains B, C, and D, and these are obtained as an initial value generation circuit. 42.

初期値生成回路42には、3を分母とするように割算を行う割算器45、1ビット分の左シフトを行うシフタ46、3を出力するレジスタ47が備えられている。初期値生成回路42は、3次方程式を2度微分した1次方程式の解を作成するもので、方程式生成手段41から出力された2次の項における係数Bを割算器45によって「3」にて除算する。割算器45により3次方程式(X3+BX2+CX+D=0)を2度微分した1次方程式(6X+2B=0)の解(B/−3)を求め、第一群ブロック43へ入力する。上記において、割算器45は、N次正方行列の固有方程式を(N−1)回微分して得られる1次方程式の解を、上記1次方程式の定数項の数にマイナスを付した数を分子とし、前記1次方程式の1次の項の係数を分母とし、既約分数の形式で表した場合に、当該解の分母を構成する数により上記N次方程式の(N−1)次項の係数を割り算する割算手段を構成する。ここに、分母を構成する数は、上記分母を因数分解して得られる素数を例として挙げることができるが、これら素数の乗算値なども含まれる。 The initial value generation circuit 42 includes a divider 45 that performs division so that 3 is a denominator, and a register 47 that outputs shifters 46 and 3 that perform a left shift of 1 bit. The initial value generating circuit 42 creates a solution of a linear equation obtained by differentiating the cubic equation twice. The coefficient B in the quadratic term output from the equation generating means 41 is “3” by the divider 45. Divide by. The solution (B / −3) of the linear equation (6X + 2B = 0) obtained by differentiating the cubic equation (X 3 + BX 2 + CX + D = 0) twice by the divider 45 is obtained and input to the first group block 43. In the above, the divider 45 is a number obtained by subtracting the solution of the linear equation obtained by differentiating the eigen equation of the N-order square matrix (N−1) times from the number of constant terms of the linear equation. Is the numerator, the coefficient of the first-order term of the first-order equation is the denominator, and is expressed in the form of an irreducible fraction , the (N-1) th-order term of the N-order equation is expressed by the number constituting the denominator of the solution. A division means for dividing the coefficient is constructed. Here, the number constituting the denominator can be exemplified by a prime number obtained by factoring the above denominator, and includes a multiplication value of these prime numbers.

一方、シフタ46によりBを1ビット左シフトする。シフタ46による1ビット左シフトは、2を掛けることを意味し、2Bを得ている。また、レジスタ47により3を出力している。第一群ブロック43、第二群ブロック44には、同一構成の二分法演算手段を構成する二分法回路501〜505が備えられている。 On the other hand, the shifter 46 shifts B to the left by 1 bit. A 1-bit left shift by the shifter 46 means multiplying by 2 and 2B is obtained. Also, 3 is output by the register 47. The first group block 43 and the second group block 44 are provided with bisection circuits 50 1 to 50 5 that constitute a bisection calculation means having the same configuration.

二分法回路501〜505は、図8に示すように構成されている。二分法回路501〜505は、加算器51と1ビット右シフトを行うシフタ52を備え、この加算器51とシフタ52により二入力値について中間値を求める中間値算出手段を構成する。 The bisection circuits 50 1 to 50 5 are configured as shown in FIG. The bisection circuits 50 1 to 50 5 include an adder 51 and a shifter 52 that performs 1-bit right shift, and the adder 51 and the shifter 52 constitute intermediate value calculation means for obtaining an intermediate value for two input values.

二分法回路501〜505は、関数値演算回路53、54を備える。関数値演算回路53、54は、図9に示されるように構成されている。関数値演算回路53、54は、乗算器61〜64と、加算器65及びセレクタ66とを備えている。乗算器61は入力値Xを2入力とし、X2を出力する。乗算器62は入力値Xと乗算器61の出力であるX2を入力とし、X3を出力する。乗算器63は入力値Xと初期値生成回路42から送られるBまたはレジスタ47の出力である3を入力とし、BX2または3X2を出力する。乗算器64は入力値Xと初期値生成回路42から送られるCまたは2Bを入力とし、CXまたは2BXを出力する。 The bisection circuits 50 1 to 50 5 include function value calculation circuits 53 and 54. The function value calculation circuits 53 and 54 are configured as shown in FIG. The function value calculation circuits 53 and 54 include multipliers 61 to 64, an adder 65, and a selector 66. The multiplier 61 takes the input value X as two inputs and outputs X 2 . The multiplier 62 receives the input value X and the output X 2 of the multiplier 61 as inputs, and outputs X 3 . The multiplier 63 receives the input value X and B sent from the initial value generation circuit 42 or 3 which is the output of the register 47, and outputs BX 2 or 3X 2 . The multiplier 64 receives the input value X and C or 2B sent from the initial value generation circuit 42, and outputs CX or 2BX.

セレクタ66は、制御回路49から出力されるイネーブル信号ENに応じて、一方から入力されている「0」または乗算器62の出力であるX3を選択的に出力する。加算器65には上記セレクタ66の出力、乗算器63、64の出力、及びCまたはDが入力され、加算器65からはこれらの加算値が出力される。 The selector 66 selectively outputs “0” input from one side or X 3 output from the multiplier 62 in accordance with the enable signal EN output from the control circuit 49. The output of the selector 66, the outputs of the multipliers 63 and 64, and C or D are input to the adder 65, and the added value is output from the adder 65.

二分法回路501、502の乗算器63にはレジスタ47から3が入力され、二分法回路503、504、505の乗算器63にはBが入力される。二分法回路501、502の乗算器64には2Bが入力され、二分法回路503、504、505の乗算器64にはCが入力される。二分法回路501、502の加算器65にはCが入力され、二分法回路503、504、505の加算器65にはDが入力される。 Registers 47 to 3 are input to the multiplier 63 of the bisection circuits 50 1 and 50 2 , and B is input to the multiplier 63 of the bisection circuits 50 3 , 50 4 , and 50 5 . 2B is input to the multiplier 64 of the bisection circuits 50 1 , 50 2 , and C is input to the multiplier 64 of the bisection circuits 50 3 , 50 4 , 50 5 . C is input to the adder 65 of the bisection circuit 50 1 , 50 2 , and D is input to the adder 65 of the bisection circuit 50 3 , 50 4 , 50 5 .

関数値演算回路53の出力はセレクタ55の制御端子に与えられ、関数値演算回路54の出力はセレクタ56の制御端子に与えられる。セレクタ55からは、制御端子の信号S2が0より大きければ「1」が出力され、制御端子の信号S2が0より小さければ「0」が出力される。セレクタ56からは、制御端子の信号S1が0より大きければ「1」が出力され、制御端子の信号S1が0より小さければ「0」が出力される。   The output of the function value calculation circuit 53 is given to the control terminal of the selector 55, and the output of the function value calculation circuit 54 is given to the control terminal of the selector 56. The selector 55 outputs “1” if the control terminal signal S 2 is greater than 0, and outputs “0” if the control terminal signal S 2 is less than 0. The selector 56 outputs “1” if the control terminal signal S 1 is greater than 0, and outputs “0” if the control terminal signal S 1 is less than 0.

セレクタ55、56の出力は否定排他的論理和回路57へ与えられ、否定排他的論理和回路57の出力はセレクタ58、59の制御端子に与えられる。セレクタ58からは、制御端子の信号S3が1であればシフタ52の出力である中間値が選択出力され、制御端子の信号S3が0であれば入力値であるX0が選択出力される。セレクタ59からは、制御端子の信号S3が0であればシフタ52の出力である中間値が選択出力され、制御端子の信号S3が1であれば入力値であるX1が選択出力される。このように、セレクタ55、56、否定排他的論理和回路(EX−NOR)57、セレクタ58、59は、関数値演算回路53、54により求められた関数値の符号に基づき、前回の中間値演算に用いた値の一方を選択して、中間値算出手段により算出された中間値と共に中間値算出手段を構成する加算器51へ供給する数値供給制御手段を構成する。 The outputs of the selectors 55 and 56 are given to the negative exclusive OR circuit 57, and the output of the negative exclusive OR circuit 57 is given to the control terminals of the selectors 58 and 59. The selector 58 selects and outputs the intermediate value that is the output of the shifter 52 if the signal S3 at the control terminal is 1, and selects and outputs the input value X0 if the signal S3 at the control terminal is 0. If the signal S3 at the control terminal is 0, the selector 59 selects and outputs the intermediate value that is the output of the shifter 52. If the signal S3 at the control terminal is 1, the selector 59 selectively outputs the input value X1. In this manner, the selectors 55 and 56, the negative exclusive OR circuit (EX-NOR) 57, and the selectors 58 and 59 are based on the sign of the function value obtained by the function value calculation circuits 53 and 54, and the previous intermediate value. One of the values used for the calculation is selected, and the numerical value supply control means for supplying to the adder 51 constituting the intermediate value calculation means together with the intermediate value calculated by the intermediate value calculation means is constituted.

図7に示されるように、信号線48Aを介して「0」が二分法回路501、503の入力値X0として与えられ、信号線48を介して先に説明したMAX値が二分法回路50250 5 入力値X1として与えられる。二分法回路501〜505の入力値X0、X1をまとめると次の表1に示すように、それぞれが前群ブロックの出力を入力とする。 As shown in FIG. 7, “0” is given as the input value X0 of the bisection circuits 50 1 and 50 3 via the signal line 48A, and the MAX value described above via the signal line 48 becomes the bisection circuit. It is given as an input value X1 of 50 2 and 50 5 . When the input values X0 and X1 of the bisection circuits 50 1 to 50 5 are put together, as shown in the following Table 1, each outputs the output of the previous group block.

Figure 0005317429
Figure 0005317429

制御回路49は、例えば、二分法回路501〜505の固有値出力の和と行列対角要素の和の差分がゼロに近いかどうかを監視して、所定演算回数に達したかを検出し、或いは、関数値演算回路53、54の出力を参照してゼロとの差が所定以内となったかを検出し、繰返し演算回数を制御する。または、二分法回路501〜505内にシフト演算実行回数をカウントするカウンタを実装し、このカウンタが指定演算回数(内部で固定もしくは外部入力による可変)となったときにシフト演算の結果を出力する構成を採用することもできる。 For example, the control circuit 49 monitors whether or not the difference between the sum of the eigenvalue outputs of the bisection circuits 50 1 to 50 5 and the sum of the matrix diagonal elements is close to zero, and detects whether the predetermined number of computations has been reached. Alternatively, the output of the function value calculation circuits 53 and 54 is referred to detect whether the difference from zero is within a predetermined range, and the number of repeated calculations is controlled. Alternatively, a counter that counts the number of shift operations is mounted in the bisection circuit 50 1 to 50 5 , and when this counter reaches the specified number of calculations (fixed internally or variable by external input), the result of the shift operation is displayed. An output configuration can also be adopted.

次に、ハードウエアにより4行4列の正方行列に対応する固有方程式の求解装置の実施例を構成した。この装置は、図10に示されるように、方程式生成手段71、初期値付与手段である初期値生成回路72、2次用二分法手段である第一群ブロック73、3次用二分法手段である第二群ブロック74、4次用二分法手段である第三群ブロック75、制御回路79を主な構成要素として構成されている。 Next, an embodiment of an eigen equation solving apparatus corresponding to a 4 × 4 square matrix was configured by hardware. As shown in FIG. 10, this apparatus comprises an equation generating means 71, an initial value generating circuit 72 as an initial value giving means, a first group block 73 as a secondary bisection means, and a tertiary bisection means. A certain second group block 74, a third group block 75 which is a quadratic bisection means, and a control circuit 79 are configured as main components.

方程式生成手段71は、4行4列の正方行列の数値を入力され、これに対応する固有方程式を生成するもので、実際には行列計算により4次方程式の係数を求める。N次の固有方程式では、N次の項に係る係数は1であり、ここでは4次方程式の4次の項における係数が1である。また、3次の項における係数をB、3次の項における係数をC、2次の項における係数をD、定数項の値をEとすると、方程式生成手段71は、B、C、D、Eを求めて、これらを初期値付与手段である初期値生成回路72へ送出する。 The equation generating means 71 receives a numerical value of a 4 × 4 square matrix and generates a corresponding eigen equation . In practice, the equation generating means 71 obtains a coefficient of a quartic equation by matrix calculation. In the Nth-order eigen equation , the coefficient relating to the Nth-order term is 1, and here, the coefficient in the fourth-order term of the quartic equation is 1. Also, assuming that the coefficient in the third-order term is B, the coefficient in the third-order term is C, the coefficient in the second-order term is D, and the value of the constant term is E, the equation generating means 71 is B, C, D, E is obtained, and these are sent to the initial value generating circuit 72 which is an initial value giving means.

初期値生成回路72には、N次方程式を(N−1)回微分して得られる1次方程式の解を、上記1次方程式の定数項の数にマイナスを付した数を分子とし、前記1次方程式の1次の項の係数を分母とし、既約分数の形式で表した場合に、当該解の分母を素因数分解して指数を用いた形式で表した場合に得られる2についての指数に対応して上記N次方程式の(N−1)次項の係数を右シフトするシフト手段である2ビット右シフトを行うシフタ76と、3を掛ける乗算器77と、1ビット分の左シフトを行うシフタ46と、3を出力するレジスタ47、2を出力するレジスタ78が備えられている。初期値生成回路72は、4次方程式を3度微分した1次方程式の解を作成するもので、方程式生成手段71から出力された3次の項における係数Bをシフタ76により2ビット右シフトすることにより「4」にて除算する。シフタ76により4次方程式(X4+BX3+CX2+DX+E=0)を3度微分した1次方程式(24X+6B=0)の解(B/−4)を求め、第一群ブロック73へ入力する。 In the initial value generation circuit 72, the solution of the linear equation obtained by differentiating the Nth order equation (N-1) times, the number obtained by adding a minus to the number of constant terms of the first order equation as a numerator, The exponent for 2 obtained when the coefficient of the first-order term of the linear equation is expressed in the form of an irreducible fraction, and the denominator of the solution is primed and expressed in the form using an exponent. The shifter 76 that performs 2-bit right shift, which is a shift means that shifts the coefficient of the (N−1) -th order term of the Nth-order equation to the right, a multiplier 77 that multiplies by 3, and a 1-bit left shift A shifter 46 is provided, and a register 47 for outputting 3 and a register 78 for outputting 2 are provided. The initial value generation circuit 72 creates a solution of a linear equation obtained by differentiating the quaternary equation three times. The coefficient B in the third-order term output from the equation generation means 71 is shifted by 2 bits to the right by the shifter 76. Divide by “4”. The solution (B / −4) of the linear equation (24X + 6B = 0) obtained by differentiating the quartic equation (X 4 + BX 3 + CX 2 + DX + E = 0) three times by the shifter 76 is obtained and input to the first group block 73.

3を掛ける乗算器77によりBに3を掛けて3Bを得る。1ビット分の左シフトを行うシフタ46に上記3B、またCを適用して左シフトにより6B、2Cを得る。3を出力するレジスタ47の出力3をシフタ46に2度通して12を得る。2を出力するレジスタ78の出力2をシフタ46に通して4を得る。これらは、4次方程式(X4+BX3+CX2+DX+E=0)を1〜3回微分したときの方程式の係数として用いられる。 A multiplier 77 for multiplying 3 multiplies B by 3 to obtain 3B. By applying the above 3B and C to the shifter 46 that performs the left shift for 1 bit, 6B and 2C are obtained by the left shift. The output 3 of the register 47 that outputs 3 is passed through the shifter 46 twice to obtain 12. The output 2 of the register 78 that outputs 2 is passed through the shifter 46 to obtain 4. These are used as coefficients of an equation when the quartic equation (X 4 + BX 3 + CX 2 + DX + E = 0) is differentiated 1 to 3 times.

第一群ブロック73、第二群ブロック74、第三群ブロック75には、同一構成の二分法演算手段を構成する図8に示した二分法回路801〜809が備えられている。二分法回路801〜809は、図8に示すブロック構成を有するが、関数値演算回路53、54の構成が異なっている。 The first group block 73, the second group block 74, and the third group block 75 are provided with the bisection circuits 80 1 to 80 9 shown in FIG. Although the bisection circuits 80 1 to 80 9 have the block configuration shown in FIG. 8, the configuration of the function value calculation circuits 53 and 54 is different.

関数値演算回路53、54は、図11に示されるように構成されている。関数値演算回路53、54は、乗算器91〜96と、加算器99及びセレクタ97、98とを備えている。乗算器91は入力値Xを2入力とし、X2を出力する。乗算器92は入力値Xと乗算器91の出力であるX2を入力とし、X3を出力する。乗算器93は入力値Xと乗算器92の出力であるX3を入力とし、X4を出力する。乗算器94は乗算器92の出力であるX3と初期値生成回路72から送られるBまたは4を入力とし、BX3または4X3を出力する。乗算器95は乗算器91の出力であるX2と初期値生成回路42から送られるC、3Bまたは12を入力とし、CX2、3BX2または12X2を出力する。乗算器96は入力値Xと初期値生成回路72から送られるD、2Cまたは6Bを入力とし、DX、2CXまたは6BXを出力する。 The function value calculation circuits 53 and 54 are configured as shown in FIG. The function value calculation circuits 53 and 54 include multipliers 91 to 96, an adder 99 and selectors 97 and 98. The multiplier 91 takes the input value X as two inputs and outputs X 2 . The multiplier 92 receives the input value X and the output X 2 of the multiplier 91 as inputs, and outputs X 3 . The multiplier 93 receives the input value X and the output X 3 of the multiplier 92 as inputs, and outputs X 4 . The multiplier 94 receives X 3 which is the output of the multiplier 92 and B or 4 sent from the initial value generation circuit 72 as inputs, and outputs BX 3 or 4X 3 . The multiplier 95 inputs X 2 which is the output of the multiplier 91 and C, 3B or 12 sent from the initial value generation circuit 42 and outputs CX 2 , 3BX 2 or 12X 2 . The multiplier 96 receives the input value X and D, 2C, or 6B sent from the initial value generation circuit 72, and outputs DX, 2CX, or 6BX.

セレクタ97は、制御回路49から出力されるイネーブル信号EN1に応じて、一方から入力されている「0」または乗算器93の出力であるX4を選択的に出力する。セレクタ98は、制御回路49から出力されるイネーブル信号EN2に応じて、一方から入力されている「0」または乗算器94の出力であるBX3(或いは4X3)を選択的に出力する。加算器99には上記セレクタ97、98の出力、乗算器95、96の出力、及びE、D、2Cのいずれかが入力され、加算器99からはこれらの加算値が出力される。 The selector 97 selectively outputs “0” input from one side or X 4 output from the multiplier 93 in accordance with the enable signal EN 1 output from the control circuit 49. The selector 98 selectively outputs “0” input from one side or BX 3 (or 4X 3 ) which is the output of the multiplier 94 in accordance with the enable signal EN2 output from the control circuit 49. The output of the selectors 97 and 98, the output of the multipliers 95 and 96, and any of E, D, and 2C are input to the adder 99, and the added value is output from the adder 99.

二分法回路803、804、805の乗算器94には4が入力され、二分法回路806〜809の乗算器94にはBが入力される。二分法回路801、802の乗算器95には12が入力され、二分法回路803、804、805の乗算器95には3Bが入力され、二分法回路806〜809の乗算器95にはCが入力される。二分法回路801、802の乗算器96には6Bが入力され、二分法回路803、804、805の乗算器96には2Cが入力され、二分法回路806〜809の乗算器95にはDが入力される。二分法回路801、802の加算器99には2Cが入力され、二分法回路803、804、805の加算器99にはDが入力され、二分法回路806〜809の加算器99にはEが入力される。 4 is input to the multipliers 94 of the bisection circuits 80 3 , 80 4 , and 80 5 , and B is input to the multipliers 94 of the bisection circuits 80 6 to 80 9 . 12 is input to the multiplier 95 of the bisection circuits 80 1 and 80 2 , and 3B is input to the multiplier 95 of the bisection circuits 80 3 , 80 4 , and 80 5 , and the bisection circuits 80 6 to 80 9 C is input to the multiplier 95. 6B is input to the multiplier 96 of the bisection circuits 80 1 and 80 2 , and 2C is input to the multiplier 96 of the bisection circuits 80 3 , 80 4 , and 80 5 , and the bisection circuits 80 6 to 80 9 D is input to the multiplier 95. 2C is input to the adder 99 of the bisection circuits 80 1 , 80 2 , D is input to the adder 99 of the dichotomy circuits 80 3 , 80 4 , 80 5 , and the adder 99 of the bisection circuits 80 6 to 80 9 E is input to the adder 99.

図10に示されるように、信号線48Aを介して「0」が二分法回路801、803、806の入力値X0として与えられ、信号線48を介して先に説明したMAX値が二分法回路802、805、809の入力値X1として与えられる。二分法回路801〜809の入力値X0、X1をまとめると次の表2に示すように、それぞれが前群ブロックの出力を入力とする。 As shown in FIG. 10, “0” is given as the input value X0 of the bisection circuits 80 1 , 80 3 , and 80 6 via the signal line 48 A, and the MAX value described above is obtained via the signal line 48. This is given as the input value X1 of the bisection circuit 80 2 , 80 5 , 80 9 . When the input values X0 and X1 of the bisection circuits 80 1 to 80 9 are put together, as shown in the following Table 2, each outputs the output of the previous group block.

Figure 0005317429
Figure 0005317429

制御回路79は、例えば、二分法回路801〜809の固有値出力の和と行列の対角要素の和の差分がゼロに近いかどうかを監視して、所定演算回数に達したかを検出し、或いは、関数値演算回路53、54の出力を参照して、この出力とゼロとの差が所定以内となったかを検出し、繰返し演算回数を制御する。または、二分法回路801〜809内にシフト演算実行回数をカウントするカウンタを実装し、このカウンタが指定演算回数(内部で固定もしくは外部入力による可変)となったときにシフト演算の結果を出力する構成を採用することもできる。 The control circuit 79 monitors, for example, whether the difference between the sum of the eigenvalue outputs of the bisection circuits 80 1 to 80 9 and the sum of the diagonal elements of the matrix is close to zero, and detects whether the predetermined number of computations has been reached. Alternatively, with reference to the outputs of the function value calculation circuits 53 and 54, it is detected whether the difference between the output and zero is within a predetermined range, and the number of repeated calculations is controlled. Or to implement a counter that counts the shift operation execution count dichotomy circuit 80 1 to 80 9, the result of the shift operation when this counter reaches a specified number of times of operations (variable by fixed or external input internally) An output configuration can also be adopted.

以上のハードウエア構成の装置によれば、二分法に対する初期値を自動で演算することができ、平方根演算器を除去し、除算器を削減させることができる。また、2の羃乗サイズの行列の場合に、右シフトによる回路を用いて構成することができ、除算が不要となる。同一構成の二分法回路の使いまわしが可能な構成であるため、設計期間が短縮可能であると共に、並列演算処理、演算器の共有構成を採用しているので、よりバリエーションが増すことができ、拡張性にも富むものである。また、使用用途に応じた二分法演算終了条件を容易に付加できるばかりか、前段二分法回路で出力される値は後段二分法回路に対する初期値であり、ここで誤差が生じたとしても二分法の特徴として収束先は同じであるために前段演算の誤差による影響を受けない効果を有し、割算器の分母を固定値としているため発散対策の必要性がないものである。また、二分法回路を並列動作させる構成であり超高速出力が可能となり、1つの二分法回路を共有化することによるゲート規模削減を図ることができる利点がある。 According to the hardware configuration apparatus described above, the initial value for the bisection method can be automatically calculated, the square root calculator can be eliminated, and the number of dividers can be reduced. Further, in the case of a matrix having a power-of-two size, it can be configured using a circuit using a right shift, and division is not necessary. Since it is possible to reuse the dichotomy circuit with the same configuration, the design period can be shortened , and the parallel arithmetic processing and the shared configuration of the arithmetic units are adopted, so the variation can be increased. It is rich in extensibility. In addition to easily adding the bisection calculation end condition according to the usage, the value output by the former bisection circuit is the initial value for the latter bisection circuit, and even if an error occurs, the bisection method is used. Since the convergence destination is the same, it has the effect of not being affected by the error of the previous stage calculation, and since the denominator of the divider is a fixed value, there is no need for countermeasures against divergence. In addition, since the bisection circuit is operated in parallel, an ultra-high speed output is possible, and there is an advantage that the gate scale can be reduced by sharing one dichotomy circuit.

本発明に係る固有方程式の求解装置の第1の実施例を示す構成図。The block diagram which shows the 1st Example of the solving apparatus of the eigen equation which concerns on this invention. 本発明に係る固有方程式の求解装置の実施例において処理対象となるN行N列の正方行列を示す図。The figure which shows the square matrix of N row N column used as the process target in the Example of the solving apparatus of the eigen equation which concerns on this invention. 本発明に係る固有方程式の求解装置の第1の実施例の要部構成を示す構成図。The block diagram which shows the principal part structure of the 1st Example of the solving apparatus of the eigen equation which concerns on this invention. 二分法による求解の手順を説明するための図。The figure for demonstrating the procedure of the solution by a bisection method. 本発明に係る固有方程式の求解装置の第1の実施例の動作を説明するためのフローチャート。The flowchart for demonstrating operation | movement of the 1st Example of the solving apparatus of the eigen equation which concerns on this invention. 本発明に係る固有方程式の求解装置の第1の実施例の動作を説明するためのフローチャート。The flowchart for demonstrating operation | movement of the 1st Example of the solving apparatus of the eigen equation which concerns on this invention. 本発明に係る3次固有方程式の求解装置をハードウエアにより構成した実施例のブロック図。The block diagram of the Example which comprised the solution apparatus of the cubic eigenequation which concerns on this invention with the hardware. 本発明に係る3次固有方程式の求解装置をハードウエアにより構成した実施例の要部ブロック図。The principal part block diagram of the Example which comprised the solution apparatus of the cubic eigenequation which concerns on this invention with the hardware. 図8に示した実施例の要部構成を示すブロック図。The block diagram which shows the principal part structure of the Example shown in FIG. 本発明に係る4次固有方程式の求解装置をハードウエアにより構成した実施例のブロック図。The block diagram of the Example which comprised the solution apparatus of the 4th eigen equation which concerns on this invention with the hardware. 本発明に係る4次固有方程式の求解装置をハードウエアにより構成した実施例の要部ブロック図。The principal part block diagram of the Example which comprised the solution apparatus of the quartic eigen equation which concerns on this invention with the hardware.

10、10(N−1)、・・・10 N、(Nー1)、2次用二分法手段
11 初期値付与手段
12 二分法演算手段
13 方程式生成手段
20 演算回数制御手段
21 中間値算出手段
22 第1の関数値算出手段
23 第2の関数値算出手段
24 数値供給制御手段
41 方程式生成手段
42 初期値生成回路
43 第一群ブロック
44 第二群ブロック
49 制御回路
51 加算器
52、76 シフタ
53 関数値演算回路
54 関数値演算回路
55、56、58、59、66 セレクタ
57 否定排他的論理和回路
65、99 加算器
71 方程式生成手段
72 初期値生成回路
73 第一群ブロック
74 第二群ブロック
75 第三群ブロック
79 制御回路
97、98 セレクタ
801-809 二分法回路
501-505 二分法回路
61-64、77、91-96 乗算器
806-809 二分法
10 N , 10 (N−1) ,... 10 N N, (N−1) Secondary bisection method 11 Initial value assignment unit 12 Bisection method calculation unit 13 Equation generation unit 20 Calculation frequency control unit 21 Intermediate Value calculation means 22 First function value calculation means 23 Second function value calculation means 24 Numerical value supply control means 41 Equation generation means 42 Initial value generation circuit 43 First group block 44 Second group block 49 Control circuit 51 Adder 52 , 76 Shifter 53 Function value calculation circuit 54 Function value calculation circuit 55, 56, 58, 59, 66 Selector 57 Negative exclusive OR circuit 65, 99 Adder 71 Equation generation means 72 Initial value generation circuit 73 First group block 74 The second group blocks 75 third group block 79 the control circuit 97 and 98 the selector 80 1 -80 9 dichotomy circuit 50 1 -50 5 dichotomy circuit 61-64,77,91-96 multiplier 0 6 -80 9 dichotomy

Claims (8)

各次の係数が整数であり各要素が2進数により表された数により構成されたN次正方行列の固有方程式を(N−1)回微分して得られる1次方程式の解を、前記1次方程式の定数項の数にマイナスを付した数を分子とし、前記1次方程式の1次の項の係数を分母とし、既約分数の形式で表した場合に、当該解の分母を構成する数により前記N次方程式の(N−1)次項の係数を割り算する割算手段及び/または前記Nが2の倍数である場合の前記1次方程式の解の分母を素因数分解して指数を用いた形式で表した場合に得られる2についての指数に対応して前記係数を右シフトするシフト手段とを有する初期値生成回路と、
二つの初期値に基づき二分法を用いて一つの解を求める二分法回路を二回路有し、前記初期値生成回路の出力、ゼロ及び前記N次正方行列における対角要素のそれぞれが採り得る最大値の和であるMAX値を前記二分法回路の入力とする第一群ブロックと、
前記二分法回路を3、4、・・・、(N−1)回路有する第(N−1)群までのブロックであって、それぞれが前記MAX値、ゼロ及び前群ブロックの出力を入力とするブロックと
を具備することを特徴とする固有方程式の求解装置。
A solution of a linear equation obtained by differentiating an eigen equation of an N-order square matrix (N-1) times in which each order coefficient is an integer and each element is constituted by a number represented by a binary number , When the number of constant terms in the following equation is minus, the numerator is used, and the coefficient of the first order term of the linear equation is used as the denominator. When expressed in the form of an irreducible fraction, the denominator of the solution is constructed. Dividing means for dividing the coefficient of the (N-1) th order term of the Nth order equation by number and / or using an exponent by factoring the denominator of the solution of the first order equation when N is a multiple of 2 An initial value generating circuit having a shift means for shifting the coefficient to the right in correspondence with an index for 2 obtained when
Two dichotomy circuits for finding one solution based on two initial values using a bisection method, the maximum of each of the output of the initial value generation circuit, zero, and each of the diagonal elements in the N-order square matrix A first group block having a MAX value which is a sum of values as an input to the dichotomy circuit;
.., (N-1) blocks having the dichotomy circuit up to the (N-1) th circuit, each of which receives the MAX value, zero and the output of the previous group block as inputs. An eigen equation solving apparatus, comprising:
二分法回路は、
二入力値について、これらの値に対応する2点の中点の値である中間値を求める中間値算出手段と、
前記中間値を、該当次数方程式の関数における変数として関数値を求める第1の関数値算出手段と、
前記二入力値の一方の値または前回の中間値を、該当次数方程式の関数における変数として関数値を求める第2の関数値算出手段と、
これら第1、第2の関数値算出手段により求められた関数値の符号に基づき、前回の中間値演算に用いた値の一方を選択して、前記中間値算出手段により算出された中間値と共に前記中間値算出手段へ供給する数値供給制御手段と
を具備することを特徴とする請求項1に記載の固有方程式の求解装置。
The bisection circuit is
For two input values, an intermediate value calculating means for obtaining an intermediate value that is a value of a midpoint between two points corresponding to these values;
A first function value calculating means for obtaining a function value as a variable in a function of the corresponding degree equation;
A second function value calculating means for obtaining a function value using one of the two input values or the previous intermediate value as a variable in the function of the corresponding degree equation;
Based on the sign of the function value obtained by the first and second function value calculating means, one of the values used for the previous intermediate value calculation is selected, together with the intermediate value calculated by the intermediate value calculating means. The eigen-equation solving apparatus according to claim 1, further comprising: a numerical value supply control unit that supplies the intermediate value calculation unit.
N次正方行列の固有方程式のN個の解をそれぞれ二分法を用いて求めるN次用二分法手段、前記N次方程式F(X)=0における関数F(X)の極小値と極大値を前記N次方程式の微分である(N−1)次方程式により求める(N−1)次用二分法手段、前記(N−1)次方程式F´(X)=0における関数F´(X)の極小値と極大値を前記(N−1)次方程式の微分である(N−2)次方程式により求める(N−2)次用二分法手段、・・・、前記3次方程式f(X)=0における関数f(X)の極小値と極大値を3次方程式の微分である2次方程式により求める2次用二分法手段と、
前記2次方程式の微分である1次方程式の解を作成し、この解とゼロ及び前記N次正方行列における対角要素のそれぞれが採り得る最大値の和であるMAX値を前記2次用二分法手段へ与える初期値付与手段とを具備し、
前記N次用二分法手段、(N−1)次用二分法手段、・・・が前段の手段による出力とゼロ及び前記MAX値を入力として処理を実行することを特徴とする固有方程式の求解装置。
An N-order bisection method for obtaining N solutions of an eigen equation of an N-order square matrix by using a bisection method, and a minimum value and a maximum value of a function F (X) in the N-order equation F (X) = 0. The (N-1) degree bisection method obtained by the (N-1) degree equation which is a derivative of the N degree equation, the function F '(X) in the (N-1) degree equation F' (X) = 0. (N-2) a bisection method for the order (N-2) which is a derivative of the (N-1) degree equation, (N-2) a quadratic equation f (X) ) = 0 , a quadratic bisection means for obtaining a minimum value and a maximum value of the function f (X) by a quadratic equation that is a derivative of the cubic equation;
A solution of a linear equation that is a derivative of the quadratic equation is created, and a MAX value that is the sum of the zero value and the maximum value that each of the diagonal elements in the N-order square matrix can take is calculated. An initial value giving means for giving to the legal means,
Solving an eigen equation characterized in that the N-th order dichotomy means, (N-1) second-order dichotomy means,... Execute processing with the output from the preceding means, zero, and the MAX value as inputs. apparatus.
N次用二分法手段、(N−1)次用二分法手段、・・・がそれぞれ、N個、(N−1)個、・・・の二分法演算手段を備え、
各二分法演算手段が、二つの初期値に基づき二分法を用いて一つの解を求めることを特徴とする請求項3に記載の固有方程式の求解装置。
N-th order bisection means, (N-1) second-order dichotomy means, respectively, comprise N, (N-1), ... bisection calculation means,
4. The eigenequation solving apparatus according to claim 3, wherein each of the bisection calculation means obtains one solution by using a bisection method based on two initial values.
二分法演算手段は、
二入力値について、これらの値に対応する2点の中点の値である中間値を求める中間値算出手段と、
前記中間値を、該当次数方程式の関数における変数として関数値を求める第1の関数値算出手段と、
前記二入力値の一方の値または前回の中間値を、該当次数方程式の関数における変数として関数値を求める第2の関数値算出手段と、
これら第1、第2の関数値算出手段により求められた関数値の符号に基づき、前回の中間値演算に用いた値の一方を選択して、前記中間値算出手段により算出された中間値と共に前記中間値算出手段へ供給する数値供給制御手段と
を具備することを特徴とする請求項4に記載の固有方程式の求解装置。
The bisection method is
For two input values, an intermediate value calculating means for obtaining an intermediate value that is a value of a midpoint between two points corresponding to these values;
A first function value calculating means for obtaining a function value as a variable in a function of the corresponding degree equation;
A second function value calculating means for obtaining a function value using one of the two input values or the previous intermediate value as a variable in the function of the corresponding degree equation;
Based on the sign of the function value obtained by the first and second function value calculating means, one of the values used for the previous intermediate value calculation is selected, together with the intermediate value calculated by the intermediate value calculating means. The eigen equation solving apparatus according to claim 4, further comprising: a numerical value supply control unit that supplies the intermediate value calculation unit.
コンピュータを、
N次正方行列の固有方程式のN個の解をそれぞれ二分法を用いて求めるN次用二分法手段、前記N次方程式F(X)=0における関数F(X)の極小値と極大値を前記N次方程式の微分である(N−1)次方程式により求める(N−1)次用二分法手段、前記(N−1)次方程式F´(X)=0における関数F´(X)の極小値と極大値を前記(N−1)次方程式の微分である(N−2)次方程式により求める(N−2)次用二分法手段、・・・、前記3次方程式f(X)=0における関数f(X)の極小値と極大値を3次方程式の微分である2次方程式により求める2次用二分法手段と、
前記2次方程式の微分である1次方程式の解を作成し、この解とゼロ及び前記N次正方行列における対角要素のそれぞれが採り得る最大値の和であるMAX値を前記2次用二分法手段へ与える初期値付与手段、
として機能させ、
前記N次用二分法手段、(N−1)次用二分法手段、・・・が前段の手段による出力とゼロ及び前記MAX値を入力として処理を実行するように制御することを特徴とする固有方程式の求解プログラム。
Computer
An N-order bisection method for obtaining N solutions of an eigen equation of an N-order square matrix by using a bisection method, and a minimum value and a maximum value of a function F (X) in the N-order equation F (X) = 0. The (N-1) degree bisection method obtained by the (N-1) degree equation which is a derivative of the N degree equation, the function F '(X) in the (N-1) degree equation F' (X) = 0. (N-2) a bisection method for the order (N-2) which is a derivative of the (N-1) degree equation, (N-2) a quadratic equation f (X) ) = 0 , a quadratic bisection means for obtaining a minimum value and a maximum value of the function f (X) by a quadratic equation that is a derivative of the cubic equation;
A solution of a linear equation that is a derivative of the quadratic equation is created, and a MAX value that is the sum of the zero value and the maximum value that each of the diagonal elements in the N-order square matrix can take is calculated. Means for giving initial values to legal means;
Function as
The N-th order bisection means, (N-1) second-order dichotomy means,... Are controlled so as to execute processing with the output from the preceding means, zero, and the MAX value as inputs. Eigen equation solving program.
N次用二分法手段、(N−1)次用二分法手段、・・・がそれぞれ、N個、(N−1)個、・・・の二分法演算手段を備え、
各二分法演算手段が、二つの初期値に基づき二分法を用いて一つの解を求めることを特徴とする請求項6に記載の固有方程式の求解プログラム。
N-th order bisection means, (N-1) second-order dichotomy means, respectively, comprise N, (N-1), ... bisection calculation means,
7. The program for solving an eigen equation according to claim 6, wherein each of the bisection computing means obtains one solution by using a bisection method based on two initial values.
二分法演算手段は、
二入力値について、これらの値に対応する2点の中点の値である中間値を求める中間値算出手段と、
前記中間値を、該当次数方程式の関数における変数として関数値を求める第1の関数値算出手段と、
前記二入力値の一方の値または前回の中間値を、該当次数方程式の関数における変数として関数値を求める第2の関数値算出手段と、
これら第1、第2の関数値算出手段により求められた関数値の符号に基づき、前回の中間値演算に用いた値の一方を選択して、前記中間値算出手段により算出された中間値と共に前記中間値算出手段へ供給する数値供給制御手段と
を具備することを特徴とする請求項7に記載の固有方程式の求解プログラム。
The bisection method is
For two input values, an intermediate value calculating means for obtaining an intermediate value that is a value of a midpoint between two points corresponding to these values;
A first function value calculating means for obtaining a function value as a variable in a function of the corresponding degree equation;
A second function value calculating means for obtaining a function value using one of the two input values or the previous intermediate value as a variable in the function of the corresponding degree equation;
Based on the sign of the function value obtained by the first and second function value calculating means, one of the values used for the previous intermediate value calculation is selected, together with the intermediate value calculated by the intermediate value calculating means. A numerical value supply control means for supplying to the intermediate value calculation means, The eigen equation solving program according to claim 7.
JP2007128575A 2007-05-14 2007-05-14 Eigen equation solver, solver program Expired - Fee Related JP5317429B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2007128575A JP5317429B2 (en) 2007-05-14 2007-05-14 Eigen equation solver, solver program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007128575A JP5317429B2 (en) 2007-05-14 2007-05-14 Eigen equation solver, solver program

Publications (2)

Publication Number Publication Date
JP2008282365A JP2008282365A (en) 2008-11-20
JP5317429B2 true JP5317429B2 (en) 2013-10-16

Family

ID=40143101

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007128575A Expired - Fee Related JP5317429B2 (en) 2007-05-14 2007-05-14 Eigen equation solver, solver program

Country Status (1)

Country Link
JP (1) JP5317429B2 (en)

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008249410A (en) * 2007-03-29 2008-10-16 Yamaha Corp Magnetic data processing device, method, and program

Also Published As

Publication number Publication date
JP2008282365A (en) 2008-11-20

Similar Documents

Publication Publication Date Title
JP4870932B2 (en) Extended Montgomery Modular Multiplier Supporting Multiple Precision
JPH0612229A (en) Multiplication and accumulation circuit
CN109716287A (en) The arithmetical circuit of reduced floating point precision
US5359548A (en) Floating-point arithmetic system having multiple-input addition and subtraction means
CN106250098A (en) For controlling the device and method rounded off when performing floating-point operation
KR100591761B1 (en) Montgomery Modular Multiplication Method Using Montgomery Modular Multiplier and Carry Store Addition
US9904512B1 (en) Methods and apparatus for performing floating point operations
JP6350111B2 (en) Multiplier circuit and multiplication method thereof
US9785407B2 (en) Data processing apparatus having combined divide-square root circuitry
JP2020507844A (en) Apparatus and method for processing input operand values
US20030212723A1 (en) Computer methods of vector operation for reducing computation time
CN110515584A (en) Floating-point Computation method and system
US6675286B1 (en) Multimedia instruction set for wide data paths
Bruguera Radix-64 floating-point divider
Yan et al. An implementation of Montgomery modular multiplication on FPGAs
Volkova et al. Determining fixed-point formats for a digital filter implementation using the worst-case peak gain measure
Brisebarre et al. A lattice basis reduction approach for the design of finite wordlength FIR filters
JP5317429B2 (en) Eigen equation solver, solver program
JP5262248B2 (en) Multiply and accumulate circuit
Saldamli et al. Spectral modular exponentiation
GB2530883A (en) Implementing a square root operation in a computer system
Prathyusha et al. Designing a Mac Unit Using Approximate Multiplier
JP3563043B2 (en) Method for calculating reciprocal of square root, calculation circuit, and program
Li et al. Architect: Arbitrary-precision constant-hardware iterative compute
JP6984762B2 (en) Arithmetic processing unit and control method of arithmetic processing unit

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20100330

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20121101

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20121113

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130115

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20130305

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130605

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20130619

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20130709

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130709

R150 Certificate of patent or registration of utility model

Ref document number: 5317429

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees