Code covered by the BSD License  

Highlights from
inv_det_0(A)

Be the first to rate this file! 21 Downloads (last 30 days) File Size: 520 Bytes File ID: #47444

inv_det_0(A)

by

 

04 Aug 2014 (Updated )

Inverse and determinant of a matrix by order expansion and condensation

| Watch this File

File Information
Description

The inverse and determinant of a given square matrix can be computed by applying iteration routine involved simultaneously matrix order expansion and condensation process. At the conclusion of iterations process, the expansion routine results in the inverse (iA) of the given matrix (A), and the condensation routine generates an array (p) of elements (Schur components), which gives the determinant (dA)of the given matrix.
               [iA,dA,p] = inv_det_0.(A).
The routine code is very compact, and works for fairly large order matrices such as A = randn(99). The total number of multiplication/division operations is about N^3, which is need for the product of two NxN matrices.
The routine involves simple arithmatic division, and will fail if the divider becomes zeros. In such cases, we must interchange among rows and columns of the given matrix, before running the routine.

Acknowledgements

Update Inverse Matrix, Ginv(X), and Inverse And Determinant Of Square Matrix inspired this file.

MATLAB release MATLAB 6.0 (R12)
MATLAB Search Path
/
Tags for This File   Please login to tag files.
Please login to add a comment or rating.
Comments and Ratings (1)
15 Nov 2014 Feng Cheng Chang

In the routine [iA,dA,p] = inv_det_0(A), the locations of array p are fixed along the diagonal of the given matrix A. This routine will fail if A is a singular matrix or P(k)->0 at the k-th iteration step.
Therefore, if p(k) is picked at absolute maximum among possible locations, the routine will not fail. I will present it soon.

Updates
12 Aug 2014

Submitted files det_inv_0.m and det_0.m must be independently separated.

15 Nov 2014

Combine order expansion and condensation routines into a simple compact routine

Contact us