home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
ftp.barnyard.co.uk
/
2015.02.ftp.barnyard.co.uk.tar
/
ftp.barnyard.co.uk
/
cpm
/
walnut-creek-CDROM
/
SIMTEL
/
CPMUG
/
CPMUG049.ARK
/
MINV.DOC
< prev
next >
Wrap
Text File
|
1984-04-29
|
1KB
|
26 lines
The files MINV.RAT and MINV.FOR contain a subroutine
which inverts a matrix and calculates the determinant.
These files contain a test program which demonstrates its
use. The method used is Gauss-Jordan elimination with
partial pivoting. On large systems this subroutine has
demonstrated better accuracy and several times the speed of
similar routines marketed by large software houses. It does
not have any protection against the case where the equations
are of wildly different orders of magnitude, but it is just
as accurate as more complicated pivot algorithms in normal
problem solving and on random matrices.
The test case shown is a good test of accuracy but
not of the pivoting algorithm. If you ran it in single
precision on an IBM or TI system you probably wouldn't get
even 4 decimal places correct.
Subfunctions are employed which are of types which
are often coded in assembler even on large systems to permit
rapid solution of problems which are much larger than this.
There are usually machine-dependent methods unknown to
FORTRAN compilers which will make them much faster. The
names employed are essentially those used by Floating Point
Systems for Array Processor FORTRAN. Incidentally, there are
actual cases where an 8080 micro has been used as the front
end for an FP AP120B, thus making a system which is faster
(for floating point vector calculations) than any IBM 370!