octave-maintainers
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

expm fix (2nd ed)


From: A. Scottedward Hodel
Subject: expm fix (2nd ed)
Date: Fri, 11 Jun 1999 08:09:00 -0500

Due to feedback from other maintainers, I rewrote the expm code
in liboctave/dMatrix.cc and liboctave/CMatrix.cc to directly
apply inverse scaling and permutations in O(n^2) operations
instead of through a matrix multiply.  (The total cost of a
matrix exponential remains O(n^3).)  Updated code (based on
octave-2.1.14) and test m-files are at directory

    ftp://ftp.eng.auburn.edu/pub/hodel/octave-expmpatch

The code does not make use of routine dgebak, as this would
require

    [dgebak operations with side = 'R']
    retval = retval.transpose();
    [dgebak operations sith side = 'L']
    retval = retval.transpose();

which is at best comparable in efficiency with what's written.

Things remaining to do with expm: the algorithm gives the user 
no control over the preconditioning steps.  If a user wishes
to turn off AEPBALANCE operations (due to, e.g., noisy
data corrupting zero entries), it is not possible in the current
implementation.  I've put that on my to do list, but may not get
to it for a few weeks.

A S Hodel Assoc. Prof. Dept Elect Eng, Auburn Univ,AL  36849-5201
On leave at NASA Marshall Space Flight Center (256) 544-1426
Address until 15 Mar 2000:Mail Code TD-55, MSFC, Alabama, 35812
http://www.eng.auburn.edu/~scotte



reply via email to

[Prev in Thread] Current Thread [Next in Thread]