       Re: DiagonalizableQ

• To: mathgroup at smc.vnet.net
• Subject: [mg122109] Re: DiagonalizableQ
• From: "Oleksandr Rasputinov" <oleksandr_rasputinov at hmamail.com>
• Date: Fri, 14 Oct 2011 05:54:19 -0400 (EDT)
• Delivered-to: l-mathgroup@mail-archive0.wolfram.com
• References: <j765a1\$2cg\$1@smc.vnet.net>

```On Thu, 13 Oct 2011 08:51:29 +0100, Jim Kochanski <jwkochanski at vcu.edu>
wrote:

> When I cut and paste "DiagonalizableQ[{{0, 1}, {0, 0}}]"
>
>> From the following, which can be found under Applications at
> http://reference.wolfram.com/mathematica/ref/JordanDecomposition.html...
>
>>> Test if a particular matrix is diagonalizable:
>>> In:= DiagonalizableQ[{{0, 1}, {0, 0}}]
>>> Out= False
>
> I get... Out= DiagonalizableQ[{{0, 1}, {0, 0}}] and not False
>
> Can anyone give me some direction on using DiagonalizableQ?
>
> Thanks!
>
> Sincerely,
>
> Jim

This is not a built-in. First define it, as shown in the cell directly
above the one you are copying from:

DiagonalizableQ[m_?MatrixQ /; Apply[Equal, Dimensions[m]]] :=
Module[{s, j},
{s, j} = JordanDecomposition[m];
Length[
Cases[ArrayRules[j][[1 ;; -2, 1]], {i_, j_} /; j == i + 1]
] == 0
];

Then:

DiagonalizableQ[{{0, 1}, {0, 0}}]

False

```

• Prev by Date: Re: Taking the Arg of a complex number
• Next by Date: Help with manipulate and 3D plotting
• Previous by thread: Re: DiagonalizableQ
• Next by thread: CUDA XCompiler