Re: Diagonalizing a non-Hermitian Matrix

• To: mathgroup at smc.vnet.net
• Subject: [mg58831] Re: Diagonalizing a non-Hermitian Matrix
• From: "Carl K. Woll" <carlw at u.washington.edu>
• Date: Wed, 20 Jul 2005 00:29:28 -0400 (EDT)
• Organization: University of Washington
• References: <dbd0d3\$2ni\$1@smc.vnet.net>
• Sender: owner-wri-mathgroup at wolfram.com

```"Ituran" <isturan at gmail.com> wrote in message
news:dbd0d3\$2ni\$1 at smc.vnet.net...
> Hi,
>
> I have the following problem. There is a given non-Hermitian matrix M.
> Let's take an example in 2x2 dimension M={{1,2+4*I},{2-5*I,1}}.
> To diagonalize it we need 2x2 unitary matrices U and V such that
>
> U.M.Vdag = Md =Diag(3.8304,6.0273).
>

As mentioned by Pratik Desai, it looks like you want the singular value
decomposition. To find the singular value decomposition in version 4, use
SingularValues

mat={{1,2+4I},{2-5I,1}};

In[4]:=
{u,d,v}=SingularValues[N[mat]]

Out[4]=
{{{0.540257 + 0.0182125 I, 0.31559 + 0.779868 I}, {0.84012 + 0.0446021
I, -0.193047 - 0.504918 I}}, {6.02729, 3.83038},

{{0.841303 + 0. I, 0.219544 + 0.493974 I}, {-0.540564 + 0. I, 0.341685 +
0.768792 I}}}

The output satisfies

In[5]:=
Conjugate[Transpose[u]] . DiagonalMatrix[d] . v == mat

Out[5]=
True

Note that the output of SingularValues (in version 4) is different from the
output of SingularValueDecomposition (in version 5). In version 5, we have

{u,d,v}=SingularValueDecomposition[N[mat]];

In[6]:=
(u.d.ConjugateTranspose[v] // Chop) == mat
Out[6]=
True

Carl Woll
Wolfram Research

[snip]

```

• Prev by Date: Re: Extract Coefficients of Fourier Series
• Next by Date: Re: Functional equations for HermiteH[n,x]
• Previous by thread: Re: Diagonalizing a non-Hermitian Matrix
• Next by thread: Re: Diagonalizing a non-Hermitian Matrix