IP Library Granted Patent US 7,065,545
Granted Patent B2
US 7,065,545 · App. 10/140,788 · Granted Jun 20, 2006

Computer methods of vector operation for reducing computation time

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 7,065,545
App. No.
10/140,788
Granted
Jun 20, 2006
Kind
B2
Abstract

A computer method of vector operations for calculating the inverse of a general square matrix and for solving linear equations systems. The invention comprises a new method of factorization and executing multiply-add operations useful for effecting dot-product operations of one-dimensional vectors. This new method reduces the computation time over computers programmed to use prior art methods.

Claims (171)

1. A computer method of solving a system of linear equations of the general form [A][X]=[B], by means of a digital computer, comprising the steps of:

(a) representing the linear equations system in said digital computer in the form of an extended matrix [A|B], formed by N×N+1 elements a ij , which are indexed as an arrangement of N rows and N+1 columns;

(b) selecting a first row of elements of said matrix having a first element different from zero;

(c) normalizing the values of the elements of said first row by dividing all elements of said first row by the value of the first non-zero element;

(d) setting the initial value of a first index “e”, associated with the sequential order of selection of the rows, to 2;

(e) selecting a second row of said matrix;

(f) calculating the values of the elements of a transformation vector [K] according to the formula:

K

n

=

{

1

n

<

e

;

-

a

en

-

i

=

1

n

-

1

(

a

in

*

K

i

)

n

=

e

;

1

}

where “n” is a second index associated with the sequential order of the n-th element of the vector [K] being calculated and “e” is said first index associated with the sequential index of the row being transformed;

(g) transforming the values of each of the elements of the selected second row by performing the dot product of said vector [K] and a vector formed by those “e” elements of each column of the extended matrix [A|B] corresponding to the rows that have been transformed prior to the selection of said second row;

(h) determining whether element a ee of matrix [A|B] is zero;

(i) if element a ee is zero, then determining whether index “e” is equal to the number of columns “n”; If a ee is not zero, then modifying the value of said index “e” so that another row of said extended matrix is selected;

(j) selecting a third row of said extended matrix and repeating steps (f) to (h) until a row is found with a nonzero element a ee ;

(k) normalizing row “e” by dividing all elements of row “e” by the value of said element a ee ;

(l) determining from the value of said first index “e” whether all rows of said matrix have been transformed; if all rows have not been transformed, then modifying the value of said index “e” so that another row of said extended matrix is selected;

(m) repeating steps (e) to (j) until all rows of said matrix have been transformed; thereby obtaining an upper diagonal matrix [U] with all elements u ij located in the main diagonal having a value of 1, and all elements below the main diagonal having a value of zero; and

(n) sequentially back-substituting the value of the nth element of vector [x] according to the following formula:

x

i

=

(

b

i

-

j

=

i

+

1

n

u

ij

x

j

)

u

ii

for i=n−1, n−2, . . . 1; whereby the calculated vector [x] is the solution vector of the original system of linear equations.

2. A computer method of solving a plurality of systems of linear equations by means of a digital computer according to claim 1 , wherein an extended matrix [A|] is formed by said first matrix [A] and a second matrix [B] formed by multiple values of said vector [B].

3. A computer method according to claim 1 , wherein a strict order of columns is not followed in the calculation process.

4. A computer method according to claim 1 wherein said matrix [A] is transformed into a lower triangular matrix [L] with all elements l ij located in its main diagonal having a of 1, and all elements above its main diagonal having a value of zero.

5. A computer readable storage medium containing computer readable code for operating a computer to perform a method according to claim 1 .

6. A computer method of solving a system of linear equations by means of a digital computer, comprising the steps of:

(a) representing the linear equations system in said digital computer in the form of an extended matrix [A|B], formed by N×N+1 elements a ij , which are indexed as an arrangement of N rows and N+1 columns;

(b) selecting a first row of elements of said matrix having a first element different from zero;

(c) normalizing the values of the elements of said first row by dividing all elements of said first row by the value of the first non-zero element;

(d) setting the initial value of a first index “e”, associated with the sequential order of selection of the rows, to 2;

(e) selecting a second row of said matrix;

(f) calculating the values of the elements of a transformation vector [K] according to the formula:

K

n

=

{

1

n

<

e

;

-

a

en

-

i

=

1

n

-

1

(

a

i

n

*

K

i

)

n

=

e

;

1

}

where “n” is a second index associated with the sequential order of the n-th element of the vector [K] being calculated and “e” is said first index associated with the sequential index of the row being transformed;

(g) calculating the value of the element a ee of said matrix by performing the dot product of said vector [K] and a vector formed by the “e” elements of each column of the extended matrix [A|B] corresponding to the rows that have been transformed prior to the selection of said second row;

(h) determining whether the element a ee of matrix [A|B] has a non-zero value;

(i) if element a ee is zero, then determining, from the value of said first index “e”, whether all columns of the matrix have been transformed; If all columns have not been transformed, then selecting another row of said extended matrix and repeating steps (f) to (h) until a row is found with a non-zero valued element a ee ;

(j) recalculating the values of the elements of a transformation vector [K] according to the formula:

K

n

=

K

n

a

ee

1

n

e

where “n” is an index associated with the n-th element of vector [K] being calculated and “e” is an index associated with the sequential index of the row being transformed;

(k) transforming the values of each of the elements of said second row by performing the dot product of said vector [K] and a vector formed by the first “e” elements of each column of the extended matrix [A|B];

(l) determining from the value of said first index “e” whether all rows of said matrix have been transformed; if all rows have not been transformed, then modifying the value of said index “e” so that another row of said extended matrix is selected;

(m) repeating steps (f) to (j) until all rows of said matrix have been transformed; thereby obtaining a transformed upper diagonal matrix [U] with all elements u ij located in the main diagonal having a value of 1, and all elements below the main diagonal having a value of zero; and

(n) sequentially back-substituting the value of the nth element of vector [x] according to the following formula:

x

i

=

(

b

i

-

j

=

i

+

1

n

u

ij

x

j

)

u

ii

for i=n−1, n−2, . . . 1; whereby the calculated vector [x] is the solution vector of the original system of linear equations.

Assignments (3)
MERGER Recorded Dec 30, 2015
From: QUILAZA TECHNOLOGY PROPERTIES, LLC
To: F. POSZAT HU, L.L.C.
Reel/Frame 037384/0156 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 19, 2008
From: RQ CONSULTORIA TECNICA, S. DE R.L. DE C.V.
To: QUILAZA TECHNOLOGY PROPERTIES, LLC
Reel/Frame 020666/0485 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 7, 2002
From: QUINTERO-DE-LA-GARZA, RAUL GERARDO
To: RQ CONSULTORIA TECNICA S. DE R.L. DE C.V.
Reel/Frame 012883/0306 →
Continuity (1)
Related Publication 20030212723A1 · Nov 13, 2003