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: Most of what I can say about this is obvious. Adding new 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 changes will be made. 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