Generalized Eigenvector and Singular Value Decompositions

• To: mathgroup at christensen.cybernetics.net
• Subject: [mg304] Generalized Eigenvector and Singular Value Decompositions
• From: Mark Kotanchek <mek at guinan.arl.psu.edu>
• Date: Wed, 7 Dec 94 19:51:04 -0500

```Bonjour,

In my research, I need to find the generalized singular values of the matrix
pencil,

| A.x - e B.x | = 0

where A and B are possibly non-square complex-valued matrices and "e" is the
singular values. My problem is that Mathematica has neither the generalized
singular value nor the generalized eigenvalue decomposition in its
repertoire.

I posed a query to WRI about my needs:

In my research in array signal processing, I often need to
resort to linear   algebra -- most notably eigendecompositions
(EVDs), and singular value   decompositions (SVDs).
Unfortunately, I have a few problems with Mma:

1) the SVD of a 6x6 complex-valued matrix requires 0.8 seconds
on my   NeXTstation -- which is IMHO excessive;

2) there is no generalized eigendecomposition routine to
solve equations of   the form, A.x - yB.x = 0 where A and B are square
matrices;

3) there is not generalized singular value decomposition to
solve equations   of the form, |A - yB| = 0 where A and B are
non-square matrices; and,

4) the pseudo-inverse function appears to not be very robust
and occasionally   fails against non-square matrices which
should not pose a problem.

Since these are fairly fundamental data analysis tools, I'm
surprised and   disappointed that they are apparently not
within Mma's capabilities. Am I   incorrect in my
disappointment?

and got back a cordial but noncommittal response:

functions and tuning the efficiency of existing functions is a
constant area of work.  Just like everyone else, we are limited
by time and resources, and must set priorities for which
functions to add and which functions to investigate for
improvement.

All of these functions in Mathematica are based on subroutines
from LINPACK and EISPACK, and will inherit the capabilities
and limitations of those functions.  We am aware of other
subroutine libraries that may be more efficient, and will
investigate making improvements as time permits.

I will forward your suggestions to the appropriate people.

Since making any changes or improvements in these areas is a
formidable undertaking, I am unable to predict when or if any

Being a good consumer, I want instant gratification and, therefore, was
hoping that some kind soul out there had run into similar needs and had
developed the requisite Mathematica code. Otherwise, I fear that I shall have
to dig into the numerical aspects myself. Since the approaches which jump to
mind feature SVDs it appears that I would have to start with generating a
more efficient SVD. :(

Mayhaps, if any of y'all are concerned about the numerical matrix algebra
aspects of Mma, you could drop a note to WRI and explain the urgency of their
working on my problems. ;)

Any help would be much appreciated,

Mark.
---
Mark Kotanchek
Signal Processing Dept - 363 ASB
Applied Research Lab/Penn State
P.O. Box 30
State College, PA 16804

e-mail:	kotanchek at psu.edu (NeXTmail)
TEL:	(814)863-0682
FAX:	(814)863-0753

```