Geogebra fails to calculate eigen vectors

sm8ps shared this problem 2 years ago
Not a Problem

Eigenvectors({{2,-1},{1,0}}) should be something like (1,1) but Geogebra returns nothing but a question mark. Eigenvalues({{2,-1},{1,0}}) is correctly determined as {1,1}.


This happens on GeoGebra Classic 5.0.527.0-d as well as on Geogebra 6.0.526.0-offline.

Comments (11)

photo
1

I guess that the solution should be a vector v=(1;1). CAS view returns a ? in both versions.


Looping your post to the Support Team, thank you.

photo
1

The eigenvectors are anything in the form (a,a) so there are an infinite number (due to the repeated eignenvalues {1,1})

photo
1

There is always an infinite number of eigenvecotrs so that does not explain why Geogebra is not able to determine one for this specific matrix whereas in most other cases it does. The "repeated" eigenvalues seem to be Geogebra's way of expressing the algebraic multiplicity of 2 whereas in fact there is just one single eigenvalue.


Still the error might have something to do with this peculiar formulation. I did some trouble shooting and found the following for r:=RandomBetween(-5,5) and M:={{r,RandomBetween(-5,5)},{0,r}}.

The matrix M does always have the single eigenvalue r. Geogebra is unable to determine the eigenvector which would be (1,0) for any value of r different from 0. If M happens to be diagonal, then Geogebra correctly determines two eigenvectors (1,0) and (0,1). The eigenvalue is always found to be {r,r}

photo
1

Sorry, I didn't explain that very well. Here's hopefully a better and more technical explanation of why it doesn't work (because it can't give 2 linearly independent eigenvectors)


"1" is an eigenvalue of multiplicity 2, but the eigenspace is of dimension 1

photo
1

Thanks for clarifying! Without any insight into the algorithm used, I would ask "why should it even try to give two linearly independent eigenvectors given that the eigenspace is 1-dimensional?". In other words, is there a better way than the one used to determine eigenvectors in such/all cases? It seems that GG has a real problem if the algebraic multiplicity does not agree with the geometric one.


Sorry to sound so naive but I have never had to think about how to determine eigenspaces algorithmically. I have read through hawe's example but need some time to think about it.

photo
photo
1

in fact jordandiagonalisation({{2,-1},{1,0}}) uses (1,1) in P matrix

photo
1

Thanks for sharing your insight! However, I do not understand what you mean by "P matrix" and what GG "uses (1,1)" for. I presume this describes steps in the algorithm but I do not see what this means. I have to admit that my knowledge of Jordan diagonalization is a bit rusty. Would you care to explain, please?

photo
1

A=PJP⁻¹ . jordandiagonalisation({{2,-1},{1,0}}) has (1,1) in first column; this is an eigenvector

photo
1

OK, got that. Thanks for explaining! As far as I understand, this shows that (1,1) is, in fact, an eigenvector. Presumably this is not the algorithm that GGB uses to determine eigenvectors, however.

photo
photo
1

A detailed step 4 step calculation you can find in https://www.geogebra.org/m/upUZg79r


The double counted eigenvalue 1 has an eigenspace of Dim 1 - that means that you do only find 1 eigenvector by equation A-λE=0 . Expanding the eigenspace to dim 2 - to find 2 eigenvectors - you have to use the jordan-algorithm.


The linked page has an example matrix

A:= {{1,-2},{2,-3}}


expanding eigenspace to dim 2


recommendation: Translations by https://www.deepl.com/translator

photo
1

Can anybody explain why this issue has been tagged with "no issue" ("kein Problem" in German)? I would say it is one big problem if a CAS software is not able to determine the eigen-space of a matrix in certain cases. As a user, I expect to get a set of eigen-vectors spanning the eigen-space when using the function Eigenvectors(), no matter what -- wouldn't you?

© 2021 International GeoGebra Institute