Discover MakerZone

MATLAB and Simulink resources for Arduino, LEGO, and Raspberry Pi

Learn more

Discover what MATLAB® can do for your career.

Opportunities for recent engineering grads.

Apply Today

Thread Subject:
Pseudo Eigen-Decomp?

Subject: Pseudo Eigen-Decomp?

From: J

Date: 3 Jun, 2010 23:16:06

Message: 1 of 8

I'm well aware of eigs() for standard eigenvalue problems, but is there a function (or a way to use eigs() maybe?) to solve the following eigenvalue problem:

A*x = c*conj(x)

?

Here, A is a 2x2 matrix with complex entires, x is a 2x1 complex "pseudo eigen vector", and c is a constant eigenvalue. Note the only difference from the standard eigenvalue problem is that conj(x) appears on the RHS instead of x.

Subject: Pseudo Eigen-Decomp?

From: Roger Stafford

Date: 4 Jun, 2010 01:27:03

Message: 2 of 8

"J " <philNOSPAMsonj@spammenot.hotmailDcom> wrote in message <hu9d3m$fqq$1@fred.mathworks.com>...
> I'm well aware of eigs() for standard eigenvalue problems, but is there a function (or a way to use eigs() maybe?) to solve the following eigenvalue problem:
>
> A*x = c*conj(x)
>
> ?
>
> Here, A is a 2x2 matrix with complex entires, x is a 2x1 complex "pseudo eigen vector", and c is a constant eigenvalue. Note the only difference from the standard eigenvalue problem is that conj(x) appears on the RHS instead of x.
- - - - - -
  Since you postulated that your pseudo eigenvalue problem might be obtained from the eig or eigs functions, I would guess you are expecting it to possess similar properties. However I don't think that is true.

  Suppose we consider the simplest case of all where A is 1 x 1. Let A = 5, for example. In the ordinary eigenvector case the unique eigenvalue would be the same value, 5. However in your case the pseudo eigenvalue can be any complex number with magnitude 5 and for each one there is a corresponding pseudo eigenvector. This is a rather different property from the other. An n x n matrix will always have just n eigenvalues which are solutions to the n-th degree characteristic polynomial. However it appears that your pseudo eigenvalues have no such limitation.

  I am sure that it should be possible to completerly analyze the 2 x 2 case and determine just what kinds of freedom there are to its eigenvalues and eigenvectors, but I haven't had time to do so yet.

Roger Stafford

Subject: Pseudo Eigen-Decomp?

From: Bruno Luong

Date: 4 Jun, 2010 06:18:03

Message: 3 of 8

"J " <philNOSPAMsonj@spammenot.hotmailDcom> wrote in message <hu9d3m$fqq$1@fred.mathworks.com>...
> I'm well aware of eigs() for standard eigenvalue problems, but is there a function (or a way to use eigs() maybe?) to solve the following eigenvalue problem:
>
> A*x = c*conj(x)
>
> ?
>
> Here, A is a 2x2 matrix with complex entires, x is a 2x1 complex "pseudo eigen vector", and c is a constant eigenvalue. Note the only difference from the standard eigenvalue problem is that conj(x) appears on the RHS instead of x.

% There is 2xn pseudo-eigen value:

% Data
A=rand(2)+1i*rand(2);

% Engine
AA =[real(A) -imag(A);
        imag(A) real(A)];
C = blkdiag(eye(2),-eye(2));

[xx D] = eig(AA,C);

for n=1:4
    % pseudo eigen-vector
    x = xx(1:2,n)+1i*xx(3:4,n);
    lambda = D(n,n);
    % check, this is zero about numerical accuracy
    norm(A*x - lambda*conj(x))
end

% Bruno

Subject: Pseudo Eigen-Decomp?

From: Bruno Luong

Date: 4 Jun, 2010 06:40:07

Message: 4 of 8

I would like to note you have to pick only the REAL eigen value of AA/C

The opposite eigen value can be combined, providing the continuum set of complex eigen-vector as Roger has pointed out.

Bruno

Subject: Pseudo Eigen-Decomp?

From: Roger Stafford

Date: 5 Jun, 2010 04:42:03

Message: 5 of 8

"Bruno Luong" <b.luong@fogale.findmycountry> wrote in message <hua747$s82$1@fred.mathworks.com>...
> I would like to note you have to pick only the REAL eigen value of AA/C
>
> The opposite eigen value can be combined, providing the continuum set of complex eigen-vector as Roger has pointed out.
>
> Bruno
- - - - - - -
  In fact these pseudo-eigenvalues have the same characteristics as in the one dimensional case I described earlier. Rather than there being a unique set of n eigenvalues in n dimensions, each possible eigenvalue is arbitrary to a multiplication by a complex number of magnitude one. In other words, only the complex magnitude (abs) of each eigenvalue is uniquely determined for a given matrix. They form an n-dimensional continuum.

  I congratulate you Bruno for finding a way to analyze the general case. I was very slowly, painfully arriving at the answer for just two dimensions when your very simple analysis appeared. I still don't know how you discovered that method. It saved me a lot of time.

Roger Stafford

Subject: Pseudo Eigen-Decomp?

From: Roger Stafford

Date: 9 Jun, 2010 05:21:05

Message: 6 of 8

"J " <philNOSPAMsonj@spammenot.hotmailDcom> wrote in message <hu9d3m$fqq$1@fred.mathworks.com>...
> I'm well aware of eigs() for standard eigenvalue problems, but is there a function (or a way to use eigs() maybe?) to solve the following eigenvalue problem:
>
> A*x = c*conj(x)
>
> ?
>
> Here, A is a 2x2 matrix with complex entires, x is a 2x1 complex "pseudo eigen vector", and c is a constant eigenvalue. Note the only difference from the standard eigenvalue problem is that conj(x) appears on the RHS instead of x.
- - - - - - - - -
  I'm afraid your original question in this thread five days ago was never completely answered. Bruno showed how to find certain of the possible solutions. I would now like to complete that discussion.

  To begin with, it must be conceded that not all 2 x 2 complex matrices possess solutions of the kind you seek. Of those that do, there is an infinite continuum of possible pseudo eigenvalues, and for each one there is a corresponding eigenvector.

  Let the original complex matrix be:

 M = [a11+i*b11,a12+i*b12;a21+i*b21,a22+i*b22];

The solutions you seek are [x1+i*y1;x2+i*y2] which satisfy

 M*[x1+i*y1;x2+i*y2] = (d+i*e)*[x1-i*y1;x2-i*y2]

where d+i*e is a complex-valued pseudo eigenvalue. It is to be understood that the a's, b's, x's, y's, d's, and e's here are all real values.

  If the real and imaginary parts are separated, this gives rise to the four homogeneous linear equations in the four unknowns x1, x2, y1, y2:

 (a11-d)*x1+a12*x2+(-b11-e)*y1-b12*y2 = 0
 a21*x1+(a22-d)*x2-b21*y1+(-b22-e)*y2 = 0
 (-b11+e)*x1-b12*x2+(-a11-d)*y1-a12*y2 = 0
 -b21*x1+(-b22+e)*x2-a21*y1+(-a22-d)*y2 = 0

If the determinant of these coefficients were to be non-zero, there could be no solutions except all zeros for the x's and y's. Setting that determinant equal to zero can be shown to yield the quadratic equation:

 (d^2+e^2)^2 - K1*(d^2+e^2) + K2 = 0

where

 K1 = a11^2+2*a12*a21+a22^2+b11^2+2*b12*b21+b22^2

 K2 = det([ a11, a12,-b11,-b12;
            a21, a22,-b21,-b22;
           -b11,-b12,-a11,-a12;
           -b21,-b22,-a21,=a22])

Thus we have a quadratic equation in the unknown d^2+e^2 where we have specified earlier that d and e are understood to be real numbers. If the quadratic does not have real, positive roots, then no root could be equal to d^2+e^2, and clearly the original problem can have no solution.

  Bruno has shown how these roots can be found if applicable by using the eig function. He does so by assuming the complex part e is zero. Then by their form, d is necessarily an eigenvalue of the matrix of the four linear equations above, and the corresponding eigenvector, [x1;x2;y1;y2], is a solution [x1+i*y1,x2+i*y2] to the pseudo problem.

  What neither one of us showed you earlier was how to obtain other solutions, provided that one was found as above. It can be done as follows. Multiply the pseudo eigenvalue by an arbitrary factor, exp(i*k), and multiply the corresponding eigenvector by exp(i*k/2). These will also be solutions. This can easily be shown by observing that multiplying [x1+i*y1,x2+i*y2] by exp(i*k/2) is equivalent to multiplying [x1-i*y1,x2-i*y2] by exp(-i*k/2). These two changes, multiplication by exp(i*k/2) on the left and exp(-i*k/2) on the right, are compensated for in the required equality by multiplying the pseudo eigenvalue by exp(i*k). Moreover the eigenvectors remain complex conjugates of one another in this process.

  Since exp(i*k) has an infinite continuum of possible values for k, this gives rise to an infinitude of possible eigenvalue/eigenvector combinations. Of course we could also multiply by factors that have other than magnitude one, but that would spoil the usual convention that eigenvector solutions should be normalized.

  The property that is lost in the pseudo problem is that the eigenvectors alone can no longer be multiplied by arbitrary complex values, as it true in ordinary eigenvalue/eigenvector problems.

  This discussion has involved only the 2 x 2 cases. However, though I have not proven it rigorously, I believe the general properties described here extend to any size square matrix, M.

Roger Stafford

Subject: Pseudo Eigen-Decomp?

From: Roger Stafford

Date: 10 Jun, 2010 10:58:07

Message: 7 of 8

"Roger Stafford" <ellieandrogerxyzzy@mindspring.com.invalid> wrote in message <hun8c1$g0f$1@fred.mathworks.com>...
> ........
> This discussion has involved only the 2 x 2 cases. However, though I have not proven it rigorously, I believe the general properties described here extend to any size square matrix, M.
> Roger Stafford
- - - - - - - -
  Just to fill in that remaining gap, those general properties I described yesterday for your "pseudo eigenvalues" can be rigorously proven to hold for any size n x n square matrix M, not just the 2 x 2 cases.

  Nonzero pseudo eigenvectors exist only in correspondence with the real nonnegative eigenvalues found in Bruno's method involving a 2n x 2n matrix. For these your pseudo eigenvalues may be multiplied by any factor exp(i*theta) where theta is arbitrary, and the pseudo eigenvectors adjusted to match, thus giving an infinite continuum of different pseudo eigenvalues and matching eigenvectors.

Roger Stafford

Subject: Pseudo Eigen-Decomp?

From: Bruno Luong

Date: 10 Jun, 2010 11:50:22

Message: 8 of 8

I agree with Roger's comment. It does seem "pseudo-inverse" is far from something well defined mathematically.

For the sake of curiosity, I just would like to ask OP (if he is still reading) in which kind of application such quantity arise?

Bruno

Tags for this Thread

No tags are associated with this thread.

What are tags?

A tag is like a keyword or category label associated with each thread. Tags make it easier for you to find threads of interest.

Anyone can tag a thread. Tags are public and visible to everyone.

Contact us