MATINV is the jMap module of jLab.

 MATINV  Fast inversion of arrays of small matrices.
 
    MATINV is a low-level function called by POLYSMOOTH.
   
    Let MAT be an array of K different M x M matrices A1,A2,...,AK.
    INV=MATINV(MAT) then returns an array of N inverse matrices.
     
    If MAT has dimensions M x M x K1 x ... KK, then MATINV returns an 
    array of the same size containing the inverses of the M x M matrices.
 
    For example, MAT could be 4 x 4 x 10 x 10, in which case the inverses
    of one hundred 4 x 4 matrices are found.
 
    MAT can have any dimensionality so long as the matrices to be inverted
    occupy the first two dimensions. 
 
    Note that MATINV only works matrices with M=2 through M=12.
    ____________________________________________________________
 
    Algorithms
 
    MATINV can use either of two different algorithms.  This is specified
    with INV=MATINV(MAT,STR). 
     
    MATINV(MAT,'direct') uses algebraic expressions for 2 x 2 and 3 x 3 
    matrix inverses together with Boltz's block diagonal recursion formula.
    For details, see the following links
 
         http://mathworld.wolfram.com/MatrixInverse.html
         http://en.wikipedia.org/wiki/Invertible_matrix.
 
    MATINV(MAT,'loop') uses Matlab's INV function together with a 
    straightforward loop.
 
    The direct algorithm, which is the default, can be much faster when
    MAT is large and the dimension to be inverted is small.  For arrays of 
    matrices larger than 8 x 8, the straightforward loop may be faster.
    ____________________________________________________________
 
    'matinv --t' runs some tests.
 
    Usage: inv=matinv(mat);
    __________________________________________________________________
    This is part of JLAB --- type 'help jlab' for more information
    (C) 2008--2022 J.M. Lilly --- type 'help jlab_license' for details

contents | allhelp | index