(adsbygoogle = window.adsbygoogle || []).push({}); Matrix diagonalization

Hi, guys!

I've graduated some time ago, and by now have completely fogotten all those matrix rules. Could you please advise me. The problem is following:

I have a large square matrix (like 1000x1000) and I have to rise this matrix to a large power, like 1000. The matrix is quite a sparse one. It looks like this:

x0x00000000000000000

0x000000000000000000

000x00x0x0x0x0x0x0x0x

0xx0xx00000000000000

00x00000000000000000

000000x0000000000000

00x00000000000000000

00000000x00000000000

00x00000000000000000

0000000000x000000000

00x00000000000000000

000000000000x0000000

00x00000000000000000

00000000000000x00000

all x's are different, all zero's are just zero's.

So, my first quess would be that I have to diagonalize the matrix somehow. But I don't remember how to do this. I want to try manually first. Then if it fails - numerically (I prefer fortran).

Any suggestions on how to diagonalized? The right bottom part of the matrix looks like it is already diagonal (although the elements are not on the main diagonal).

Any help will be greatly appreciated.

**Physics Forums | Science Articles, Homework Help, Discussion**

Dismiss Notice

Join Physics Forums Today!

The friendliest, high quality science and math community on the planet! Everyone who loves science is here!

The friendliest, high quality science and math community on the planet! Everyone who loves science is here!

# Matrix dialonalization

**Physics Forums | Science Articles, Homework Help, Discussion**