INVERSE - matrix inversion

This procedure computes C = inverse(A), where A and C are matrices.

Usage

The INVERSE stored procedure has the following syntax:
INVERSE(matrixA,matrixC)
Parameters
matrixA
The name of input matrix A.
Type: NVARCHAR(ANY)
matrixC
The name of output matrix C.
Type: NVARCHAR(ANY)
Returns
BOOLEAN TRUE always.

Examples

CALL nzm..CREATE_RANDOM_MATRIX('A6K', 6000, 6000); 
CALL nzm..GEMM_LARGE('A6K', FALSE,'A6K', TRUE,'L6K'); 
CALL nzm..INVERSE('L6K','I6K');
CALL nzm..INVERSE_SMALL('L6K', 'S6K');
CALL nzm..DELETE_MATRIX('A6K' );
CALL nzm..DELETE_MATRIX('L6K' );
CALL nzm..DELETE_MATRIX('I6K' );
CALL nzm..DELETE_MATRIX('S6K' );
CALL nzm..CREATE_RANDOM_MATRIX('A5K', 5000, 5000); 
CALL nzm..GEMM_LARGE('A5K', FALSE,'A5K', TRUE,'L5K');
 CALL nzm..INVERSE('L5K', 'I5K');
CALL nzm..INVERSE_SMALL('L5K', 'S5K');
CALL nzm..DELETE_MATRIX('A5K' );
CALL nzm..DELETE_MATRIX('L5K' );
CALL nzm..DELETE_MATRIX('I5K' );
CALL nzm..DELETE_MATRIX('S5K' );
CALL nzm..CREATE_RANDOM_MATRIX('A4K', 4000, 4000); 
CALL nzm..GEMM_LARGE('A4K', FALSE,'A4K', TRUE,'L4K');
CALL nzm..INVERSE('L4K', 'I4K');
CALL nzm..INVERSE_SMALL('L4K', 'S4K');
CALL nzm..DELETE_MATRIX('A4K' );
CALL nzm..DELETE_MATRIX('L4K' );
CALL nzm..DELETE_MATRIX('I4K' );
CALL nzm..DELETE_MATRIX('S4K' );
CALL nzm..CREATE_RANDOM_MATRIX('A3K', 3000, 3000); 
CALL nzm..GEMM_LARGE('A3K', FALSE,'A3K', TRUE,'L3K');
CALL nzm..INVERSE('L3K', 'I3K');
CALL nzm..INVERSE_SMALL('L3K', 'S3K');
CALL nzm..DELETE_MATRIX('A2K' );
CALL nzm..DELETE_MATRIX('L2K' );
CALL nzm..DELETE_MATRIX('I2K' );
CALL nzm..DELETE_MATRIX('S2K' );
CALL nzm..CREATE_RANDOM_MATRIX('A2K', 2000,2000); 
CALL nzm..GEMM_LARGE('A2K', FALSE,'A2K', TRUE,'L2K'); 
CALL nzm..INVERSE('L2K', 'I2K');
CALL nzm..INVERSE_SMALL('L2K', 'S2K');
CALL nzm..DELETE_MATRIX('A2K' );
CALL nzm..DELETE_MATRIX('L2K' );
CALL nzm..DELETE_MATRIX('I2K' );
CALL nzm..DELETE_MATRIX('S2K' );
CALL nzm..CREATE_RANDOM_MATRIX('A15K', 1500, 1500); 
CALL nzm..GEMM_LARGE('A15K', FALSE,'A15K', TRUE,'L15K'); 
CALL nzm..INVERSE('L15K', 'I15K');
CALL nzm..INVERSE_SMALL('L15K', 'S15K');
CALL nzm..DELETE_MATRIX('A15K' );
CALL nzm..DELETE_MATRIX('L15K' );
CALL nzm..DELETE_MATRIX('I15K' );
CALL nzm..DELETE_MATRIX('S15K' );
CALL nzm..CREATE_RANDOM_MATRIX('A1K', 1000, 1000); 
CALL nzm..GEMM_LARGE('A1K',FALSE,'A1K', TRUE,'L1K'); 
CALL nzm..INVERSE('L1K', 'I1K');
CALL nzm..INVERSE_SMALL('L1K', 'S1K');
CALL nzm..DELETE_MATRIX('A1K' );
CALL nzm..DELETE_MATRIX('L1K' );
CALL nzm..DELETE_MATRIX('I1K' );
CALL nzm..DELETE_MATRIX('S1K' );
CALL nzm..CREATE_RANDOM_MATRIX('A05K', 500, 500);
CALL nzm..GEMM_LARGE('A05K', FALSE,'A05K', TRUE,'L05K'); 
CALL nzm..INVERSE('L05K', 'I05K');
CALL nzm..INVERSE_SMALL('L05K', 'S05K');
CALL nzm..DELETE_MATRIX('A05K' );
CALL nzm..DELETE_MATRIX('L05K' );
CALL nzm..DELETE_MATRIX('I05K' );
CALL nzm..DELETE_MATRIX('S05K' );
CALL nzm..CREATE_RANDOM_MATRIX('A25K', 250, 250);
CALL nzm..GEMM_LARGE('A25K', FALSE,'A25K', TRUE,'L25K'); 
CALL nzm..INVERSE('L25K', 'I25K');
CALL nzm..INVERSE_SMALL('L25K', 'S25K');
CALL nzm..DELETE_MATRIX('A25K' );
CALL nzm..DELETE_MATRIX('L25K' );
CALL nzm..DELETE_MATRIX('I25K' );
CALL nzm..DELETE_MATRIX('S25K' );
CALL nzm..CREATE_RANDOM_MATRIX('A10K', 100, 100);
CALL nzm..GEMM_LARGE('A10K', FALSE,'A10K', TRUE,'L10K'); 
CALL nzm..INVERSE('L10K', 'I10K');
CALL nzm..INVERSE_SMALL('L10K', 'S10K');
CALL nzm..DELETE_MATRIX('A10K' );
CALL nzm..DELETE_MATRIX('L10K' );
CALL nzm..DELETE_MATRIX('I10K' );
CALL nzm..DELETE_MATRIX('S10K' );
CALL nzm..CREATE_RANDOM_MATRIX('A10K', 10, 10);
CALL nzm..GEMM_LARGE('A10K', FALSE,'A10K', TRUE,'L10K'); 
CALL nzm..INVERSE('L10K', 'I10K');
CALL nzm..INVERSE_SMALL('L10K', 'S10K');
CALL nzm..DELETE_MATRIX('A10K' );
CALL nzm..DELETE_MATRIX('L10K' );
CALL nzm..DELETE_MATRIX('I10K' );
CALL nzm..DELETE_MATRIX('S10K' );

 CREATE_ONES_MATRIX
--------------------
 t
(1 row)

 INVERSE
---------
 t
(1 row)

                                            PRINT
--------------------------------------------------------------------------------------------------
 -- matrix: B --
 0.11111111111111, 0.11111111111111, 0.11111111111111
 0.11111111111111, 0.11111111111111, 0.11111111111111
 0.11111111111111, 0.11111111111111, 0.11111111111111 
(1 row)

 DELETE_MATRIX
---------------
 t
(1 row)

 DELETE_MATRIX
---------------
 t
(1 row)